blob: 1d5cba4306278c9b3b61962b6ba6f9448837600a (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
from libcpp cimport bool
cdef extern from "<latch>" namespace "std" nogil:
# Note on thread safety:
# For any of the blocking functions, you should be very careful
# to ensure that you are not deadlocked on the GIL.
cdef cppclass latch:
latch(ptrdiff_t expected)
void count_down() except+
void count_down(ptrdiff_t n) except+
bool try_wait()
void wait() except+
void arrive_and_wait() except+
void arrive_and_wait(ptrdiff_t n) except+
ptrdiff_t max()
|