diff options
| author | Martin Sustrik <sustrik@250bpm.com> | 2012-02-16 10:09:36 +0900 | 
|---|---|---|
| committer | Martin Sustrik <sustrik@250bpm.com> | 2012-02-16 10:09:36 +0900 | 
| commit | 7c2dfc65b15f62751470778284b325734d0a241b (patch) | |
| tree | 1b46efb713aaa7fc10d7fd128c49d22f2bfb8645 /src/socket_base.hpp | |
| parent | 891809e1074d16afa733165a164d0225937e1af9 (diff) | |
Socket re-entrancy rewritten
The inspiration for this re-write came form John Skaller's
patch. Adding him to Credits section of the AUTHORS file.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
Diffstat (limited to 'src/socket_base.hpp')
| -rw-r--r-- | src/socket_base.hpp | 5 | 
1 files changed, 5 insertions, 0 deletions
| diff --git a/src/socket_base.hpp b/src/socket_base.hpp index 850586e..8b9a948 100644 --- a/src/socket_base.hpp +++ b/src/socket_base.hpp @@ -65,6 +65,10 @@ namespace xs          //  This function can be called from a different thread!          void stop (); +        //  Synchronise access of application threads to the socket. +        void lock (); +        void unlock (); +          //  Interface for communication with the API layer.          int setsockopt (int option_, const void *optval_, size_t optvallen_);          int getsockopt (int option_, void *optval_, size_t *optvallen_); @@ -143,6 +147,7 @@ namespace xs          //  Synchronisation of access to the socket. If Crossroads are running          //  in non-reentrant mode, it is a dummy mutex-like object. +        bool reentrant;          mutex_t sync;          //  If true, associated context was already terminated. | 
