GioBufferedOutputStream

描述 [src]

class Gio.BufferedOutputStream : Gio.FilterOutputStream
  implements Gio.Seekable {
  priv: GBufferedOutputStreamPrivate*
}

缓冲输出流实现 GFilterOutputStream 并为缓冲和写入提供支持。

默认情况下,GBufferedOutputStream的缓冲区大小设置为 4kb。

要创建缓冲输出流,请使用 g_buffered_output_stream_new(),或 g_buffered_output_stream_new_sized() 以在构造时指定缓冲区大小。

要获取缓冲输入流中缓冲区的大小,请使用 g_buffered_output_stream_get_buffer_size()。要更改缓冲输出流缓冲区的大小,请使用 g_buffered_output_stream_set_buffer_size()。请注意,缓冲区的大小不能减少到缓冲区中的数据大小以下。

实现

构造函数

g_buffered_output_stream_new

为基本流创建新的缓冲输出流。

g_buffered_output_stream_new_sized

使用给定的缓冲区大小创建新的缓冲输出流。

实例方法

g_buffered_output_stream_get_auto_grow

检查是否随数据的添加自动增长缓冲区。

g_buffered_output_stream_get_buffer_size

获取 stream 中缓冲区的大小。

g_buffered_output_stream_set_auto_grow

设置 stream的缓冲区是否应自动增长。如果 auto_grow 为 true,则每次写入都会使缓冲区变大,你必须手动刷新缓冲区才能实际将数据写出到基础流中。

g_buffered_output_stream_set_buffer_size

将内部缓冲区的大小设置为 size

GFilterOutputStream 继承的方法 (3)
g_filter_output_stream_get_base_stream

获取筛选流的基本流。

g_filter_output_stream_get_close_base_stream

返回当 stream 关闭时基本流是否也将关闭。

g_filter_output_stream_set_close_base_stream

设置当 stream 关闭时基本流是否也将关闭。

GOutputStream 继承的方法 (31)

请参阅 GOutputStream 以获取方法的完整列表。

GObject 继承的方法 (43)

请参阅 GObject 以获取方法的完整列表。

GSeekable 继承的方法 (5)
g_seekable_can_seek

测试流是否支持 GSeekableIface

g_seekable_can_truncate

测试流的长度是否可以使用 g_seekable_truncate() 调整。

g_seekable_seek

通过给定的 offsettype 修改查找流。

g_seekable_tell

指示流中的当前位置。

g_seekable_truncate

将流的长度设置为 offset。如果流以前大于 offset,则丢弃额外数据。如果流以前短于 offset,则使用 NUL (‘\0’) 字节对其进行扩展。

属性

Gio.BufferedOutputStream:auto-grow

是否应让缓冲区自动增长。

Gio.BufferedOutputStream:buffer-size

后端缓冲区的大小(以字节为单位)。

GFilterOutputStream 继承的属性 (2)
Gio.FilterOutputStream:base-stream
无可用说明。

Gio.FilterOutputStream:close-base-stream

在关闭过滤流时是否应同时关闭基础流。

信号

GObject 继承的信号 (1)
GObject::notify

当对象有一个属性的值通过 g_object_set_property()、g_object_set() 等设置时,该对象上便会发出通知信号。

类结构

struct GioBufferedOutputStreamClass {
  GFilterOutputStreamClass parent_class;
  void (* _g_reserved1) (
void
  );
  void (* _g_reserved2) (
void
  );
  
}

无可用说明。

类成员
parent_class: GFilterOutputStreamClass

无可用说明。

_g_reserved1: void (* _g_reserved1) ( void )

无可用说明。

_g_reserved2: void (* _g_reserved2) ( void )

无可用说明。