1 #include <u.h> 2 #include <libc.h> 3 #include <thread.h> 4 5 static Lock l; 6 7 void _xinc(long * p)8 _xinc(long *p) 9 { 10 11 lock(&l); 12 (*p)++; 13 unlock(&l); 14 } 15 16 long _xdec(long * p)17 _xdec(long *p) 18 { 19 long r; 20 21 lock(&l); 22 r = --(*p); 23 unlock(&l); 24 return r; 25 } 26