BufferedOutputStream
Buffered output stream implements class@Gio.FilterOutputStream and provides for buffered writes.
By default, GBufferedOutputStream
's buffer size is set at 4 kilobytes.
To create a buffered output stream, use ctor@Gio.BufferedOutputStream.new, or ctor@Gio.BufferedOutputStream.new_sized to specify the buffer's size at construction.
To get the size of a buffer within a buffered input stream, use method@Gio.BufferedOutputStream.get_buffer_size. To change the size of a buffered output stream's buffer, use method@Gio.BufferedOutputStream.set_buffer_size. Note that the buffer's size cannot be reduced below the size of the data within the buffer.
Constructors
Properties
The size of the backend buffer, in bytes.
Whether the base stream should be closed when the filter stream is closed.
Functions
Tests if the length of the stream can be adjusted with g_seekable_truncate().
Clears the pending flag on @stream.
Closes the stream, releasing resources related to it.
Requests an asynchronous close of the stream, releasing resources related to it. When the operation is finished @callback will be called. You can then call g_output_stream_close_finish() to get the result of the operation.
Closes an output stream.
Given @connection to communicate with a proxy (eg, a #GSocketConnection that is connected to the proxy server), this does the necessary handshake to connect to @proxy_address, and if required, wraps the #GIOStream to handle proxy payload.
Asynchronous version of g_proxy_connect().
See g_proxy_connect().
Forces a write of all user-space buffered data for the given
Forces an asynchronous write of all user-space buffered data for the given @stream. For behaviour details see g_output_stream_flush().
Finishes flushing an output stream.
Checks if an output stream has pending actions.
Seeks in the stream by the given @offset, modified by @type.
Sets whether the base stream will be closed when @stream is closed.
Sets @stream to have actions pending. If the pending flag is already set or @stream is closed, it will return false and set
Splices an input stream into an output stream.
Splices a stream asynchronously. When the operation is finished @callback will be called. You can then call g_output_stream_splice_finish() to get the result of the operation.
Finishes an asynchronous stream splice operation.
Some proxy protocols expect to be passed a hostname, which they will resolve to an IP address themselves. Others, like SOCKS4, do not allow this. This function will return false if @proxy is implementing such a protocol. When false is returned, the caller should resolve the destination hostname first, and then pass a #GProxyAddress containing the stringified IP address to g_proxy_connect() or g_proxy_connect_async().
Sets the length of the stream to @offset. If the stream was previously larger than @offset, the extra data is discarded. If the stream was previously shorter than @offset, it is extended with NUL ('\0') bytes.
A wrapper function for g_output_stream_write() which takes a #GBytes as input. This can be more convenient for use by language bindings or in other cases where the refcounted nature of #GBytes is helpful over a bare pointer interface.
This function is similar to g_output_stream_write_async(), but takes a #GBytes as input. Due to the refcounted nature of #GBytes, this allows the stream to avoid taking a copy of the data.
Finishes a stream write-from-#GBytes operation.
Finishes a stream write operation.