Go to the documentation of this file.
12 for (
i = 0;
i < 20;
i++) {
14 printf(
"Reader %d: acquired lock\n",
num);
17 printf(
"Reader %d: released lock\n",
num);
26 for (
i = 0;
i < 20;
i++) {
28 printf(
"Writer %d: acquired lock\n",
num);
32 printf(
"Writer %d: released lock\n",
num);
46 int thread_nums[] = {1, 2, 1};
UV_EXTERN void uv_barrier_destroy(uv_barrier_t *barrier)
_Use_decl_annotations_ int __cdecl printf(const char *_Format,...)
static uv_thread_t * threads
UV_EXTERN void uv_rwlock_destroy(uv_rwlock_t *rwlock)
UV_EXTERN int uv_barrier_init(uv_barrier_t *barrier, unsigned int count)
UV_EXTERN void uv_rwlock_wrlock(uv_rwlock_t *rwlock)
UV_EXTERN void uv_rwlock_wrunlock(uv_rwlock_t *rwlock)
UV_EXTERN int uv_thread_create(uv_thread_t *tid, uv_thread_cb entry, void *arg)
UV_EXTERN int uv_rwlock_init(uv_rwlock_t *rwlock)
UV_EXTERN void uv_rwlock_rdunlock(uv_rwlock_t *rwlock)
UV_EXTERN int uv_barrier_wait(uv_barrier_t *barrier)
UV_EXTERN void uv_rwlock_rdlock(uv_rwlock_t *rwlock)
grpc
Author(s):
autogenerated on Fri May 16 2025 02:59:17