Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Shuttle.Output_channel
Sourceval create :
?buf_len:int ->
?write_timeout:Core.Time_ns.Span.t ->
?time_source:[> Core.read ] Async_kernel.Time_source.T1.t ->
Async_unix.Fd.t ->
t
create ?max_buffer_size ?buf_len ?write_timeout fd
creates a new writer.
The writer doesn't flush automatically and the user is responsible for calling flush
, which triggers a write system call if needed.
write_timeout
is the maximum amount of time the writer will wait when attempting to write data to the underlying file descriptor.
monitor
returns the async monitor used by Output_channel
for performing all write operations.
remote_closed
is a deferred that's resolved when the consumer that's reading the bytes written to the Output_channel is closed, i.e. the channel has received an EPIPE or ECONNRESET when it attempts to perform a write.
write_bigstring
copies the bigstring into the channel's internal buffer. It is safe to modify the bigstring once write_bigstring
returns.
write
copies the string into the channel's internal buffer. The string will surface the next time the writer schedules a write.
close
will close the underlying file descriptor after waiting for the writer to be flushed.
schedule_flush
will schedule a write system call if one is needed.
flushed_or_fail t
returns a Deferred that is resolved when all previous writes complete, or if any of the write operations fail.
flushed t
returns a deferred that will get resolved when all previous writes have finished. Unlike flushed_or_fail
if a write call fails then the deferred will never be resolved.
flush
schedules a write system call if one is needed and returns a deferred that is resolved when all prior writes have finished. If a write call fails then the deferred will never be resolved.
flush_or_fail
schedules a write system call if one is needed and returns a deferred that is resolved when all previous writes complete, or if any of the write operations fail.
val of_pipe :
?buf_len:int ->
Core.Info.t ->
string Async_kernel.Pipe.Writer.t ->
(t * unit Async_kernel.Deferred.t) Async_kernel.Deferred.t