diff options
author | Samuel Williams <[email protected]> | 2024-10-05 15:10:12 +1300 |
---|---|---|
committer | GitHub <[email protected]> | 2024-10-05 15:10:12 +1300 |
commit | c50298d7d4f8797963490f5679b1c481b89d4955 (patch) | |
tree | 5db5be70aef942882ef3a856ba83432b8a44a9ce /internal/io.h | |
parent | e766cb3e578fcfb3f21dd8f4a95cd4296b704c89 (diff) |
Introduce `rb_io_blocking_region` which takes `struct rb_io` argument. (#11795)
This does not change any actual behaviour, but provides a choke point for blocking IO operations.
* Update `IO::Buffer` to use `rb_io_blocking_region`.
* Update `File` to use `rb_io_blocking_region`.
* Update `IO` to use `rb_io_blocking_region`.
Notes
Notes:
Merged-By: ioquatix <[email protected]>
Diffstat (limited to 'internal/io.h')
-rw-r--r-- | internal/io.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/internal/io.h b/internal/io.h index 1891248a19..c207ca38bf 100644 --- a/internal/io.h +++ b/internal/io.h @@ -135,6 +135,9 @@ RUBY_SYMBOL_EXPORT_BEGIN void rb_maygvl_fd_fix_cloexec(int fd); int rb_gc_for_fd(int err); void rb_write_error_str(VALUE mesg); + +VALUE rb_io_blocking_region_wait(struct rb_io *io, rb_blocking_function_t *function, void *argument, enum rb_io_event events); +VALUE rb_io_blocking_region(struct rb_io *io, rb_blocking_function_t *function, void *argument); RUBY_SYMBOL_EXPORT_END #endif /* INTERNAL_IO_H */ |