aboutsummaryrefslogtreecommitdiff
path: root/src/platform/posix/posix_pollq_kqueue.h
diff options
context:
space:
mode:
authorGarrett D'Amore <garrett@damore.org>2024-12-22 17:17:38 -0800
committerGarrett D'Amore <garrett@damore.org>2024-12-22 17:17:38 -0800
commit4104962dfc897f51f0b6e7bfabd2e9766085400e (patch)
tree3d404f920f0d29dbbc66e5b38a36eece66f6d38c /src/platform/posix/posix_pollq_kqueue.h
parent6055f936411ca832abbfcbddba23e1e638f77e26 (diff)
downloadnng-4104962dfc897f51f0b6e7bfabd2e9766085400e.tar.gz
nng-4104962dfc897f51f0b6e7bfabd2e9766085400e.tar.bz2
nng-4104962dfc897f51f0b6e7bfabd2e9766085400e.zip
pollers: use atomic bit masking operations to eliminate lockss
This is done for kqueue and poll. Others coming soon.
Diffstat (limited to 'src/platform/posix/posix_pollq_kqueue.h')
-rw-r--r--src/platform/posix/posix_pollq_kqueue.h3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/platform/posix/posix_pollq_kqueue.h b/src/platform/posix/posix_pollq_kqueue.h
index a153b363..69cf6dae 100644
--- a/src/platform/posix/posix_pollq_kqueue.h
+++ b/src/platform/posix/posix_pollq_kqueue.h
@@ -22,9 +22,8 @@ struct nni_posix_pfd {
nni_atomic_flag closed;
nni_atomic_flag stopped;
bool reaped;
- unsigned events;
+ nni_atomic_int events;
nni_cv cv; // signaled when poller has unregistered
- nni_mtx mtx;
};
#define NNI_POLL_IN (0x0001)