Condition.hx 1000 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. package sys.thread;
  2. #if doc_gen
  3. @:coreApi extern class Condition {
  4. function new():Void;
  5. public function acquire():Void;
  6. public function tryAcquire():Bool;
  7. public function release():Void;
  8. public function wait():Void;
  9. public function signal():Void;
  10. public function broadcast():Void;
  11. }
  12. #else
  13. abstract Condition(hl.Abstract<"hl_condition">) {
  14. public function new():Void {
  15. this = alloc();
  16. }
  17. @:hlNative("std", "condition_acquire")
  18. public function acquire():Void {}
  19. @:hlNative("std", "condition_try_acquire")
  20. public function tryAcquire():Bool {
  21. return false;
  22. }
  23. @:hlNative("std", "condition_release")
  24. public function release():Void {}
  25. @:hlNative("std", "condition_wait")
  26. public function wait():Void {}
  27. @:hlNative("std", "condition_signal")
  28. public function signal():Void {}
  29. @:hlNative("std", "condition_broadcast")
  30. public function broadcast():Void {}
  31. @:hlNative("std", "condition_alloc")
  32. static function alloc():hl.Abstract<"hl_condition"> {
  33. return null;
  34. }
  35. }
  36. #end