xincport.h 211 B

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