Struct tk_bufstream::WriteBuf
[−]
[src]
pub struct WriteBuf<S> { pub out_buf: Buf, // some fields omitted }
An output counterpart of IoBuf when the latter is split
Fields
out_buf: Buf
Methods
impl<S: Io> WriteBuf<S>
[src]
fn flush(&mut self) -> Result<(), Error>
Write data in the output buffer to actual stream
You should put the data to be sent into self.out_buf
before flush
Note: this method silently assumes that you will call it on poll every time until self.done() returns false. I.e. it behaves as Async method but does't return Async value to allow simpler handling
fn done(&self) -> bool
Returns true when connection is closed by peer
Note: this method returns false and schedules a wakeup if connecion is currently locked
fn borrow_raw(self) -> FutureWriteRaw<S>
Returns a future which will resolve into WriteRaw
This future resolves when after two conditions:
- Output buffer is fully flushed to the network (i.e. OS buffers)
- Internal BiLock is locked
Note: WriteRaw
will lock the underlying stream for the whole
lifetime of the WriteRaw
.