diff options
author | Steve Bennett <steveb@workware.net.au> | 2023-05-28 11:22:12 +1000 |
---|---|---|
committer | Steve Bennett <steveb@workware.net.au> | 2023-07-04 09:23:43 +1000 |
commit | 41f431f30cc6118ef982c6374914810cd07a8106 (patch) | |
tree | 036384d2c7e90a0236642ebf65686601c92656d5 /jim-eventloop.h | |
parent | ad720049ec1ae3536d64fbb4c80a79e65ba5af39 (diff) | |
download | jimtcl-41f431f30cc6118ef982c6374914810cd07a8106.zip jimtcl-41f431f30cc6118ef982c6374914810cd07a8106.tar.gz jimtcl-41f431f30cc6118ef982c6374914810cd07a8106.tar.bz2 |
aio: change to use unix io, not stdio
This changes especially makes buffered I/O work
with non-blocking channels.
- separate read and write buffering
- support for timeout on blocking read
- read/write on same channel in event loop with buffering
- read buffer is the same across read, gets, copyto
- autoflush non-blocking writes via event loop
- copyto can now copy to any filehandle-like command
- add some copyto tests
Signed-off-by: Steve Bennett <steveb@workware.net.au>
Diffstat (limited to 'jim-eventloop.h')
-rw-r--r-- | jim-eventloop.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/jim-eventloop.h b/jim-eventloop.h index f2b2abf..ee0b28d 100644 --- a/jim-eventloop.h +++ b/jim-eventloop.h @@ -74,6 +74,8 @@ JIM_EXPORT jim_wide Jim_CreateTimeHandler (Jim_Interp *interp, Jim_EventFinalizerProc *finalizerProc); JIM_EXPORT jim_wide Jim_DeleteTimeHandler (Jim_Interp *interp, jim_wide id); JIM_EXPORT void *Jim_FindFileHandler(Jim_Interp *interp, int fd, int mask); +/* This should probably be in jimiocompat.h */ +JIM_EXPORT int Jim_ReadableTimeout(int fd, long ms); #define JIM_FILE_EVENTS 1 #define JIM_TIME_EVENTS 2 |