diff options
| author | 2024-04-26 19:28:20 -0500 | |
|---|---|---|
| committer | 2024-04-26 19:28:20 -0500 | |
| commit | f0f1b7ce9e232b017c55946203a6f1299cd584d7 (patch) | |
| tree | 5f5b0bd1106d721035c4e4452b6c34ba47340dae /src/include | |
| parent | Remove unneeded `string` functions. (diff) | |
Address #1431 - level-trigger mode for net/accept-loop
In the edge-trigger mode before this change, if a socket
receives 2 connections before one can be handled, then only a single
connection is handle and 1 connection will never be handled in some
cases. Reverting to level-trigger mode makes this impossible.
Diffstat (limited to 'src/include')
| -rw-r--r-- | src/include/janet.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/include/janet.h b/src/include/janet.h index 1cfb970f..195c1c47 100644 --- a/src/include/janet.h +++ b/src/include/janet.h @@ -636,6 +636,12 @@ JANET_API void janet_async_end(JanetFiber *fiber); /* Needed for windows to mark a fiber as waiting for an IOCP completion event. Noop on other platforms. */ JANET_API void janet_async_in_flight(JanetFiber *fiber); +/* On some platforms, it is important to be able to control if a stream is edge-trigger or level triggered. + * For example, a server that is accepting connections might want to be level triggered or edge-triggered + * depending on expected service. */ +JANET_API void janet_stream_edge_triggered(JanetStream *stream); +JANET_API void janet_stream_level_triggered(JanetStream *stream); + #endif /* Janet uses atomic integers in several places for synchronization between threads and |
