Fuchsia.mem

添加数量:7

结构

缓冲区资源

fuchsia.mem/buffer.fidl 中定义

数据缓冲区,其大小不一定是页面大小的倍数。

已弃用:此类型是多余的,且已废弃。请避免使用 zx.Handle:VMO 对象,并将内容的大小存储在 ZX_PROP_VMO_CONTENT_SIZE 属性中。

字段类型说明默认
vmo handle<vmo>

包含缓冲区的 vmo。

无默认值
size uint64

缓冲区中的字节数。

缓冲区的内容从 VMO 的开头开始,并持续 size 个字节。如需指定不在 VMO 开头部分的字节范围,请使用 Range,而不是缓冲区。

此大小不得大于 VMO 的物理大小。

无默认值

范围资源

fuchsia.mem/range.fidl 中定义

VMO 中的字节范围。

字段类型说明默认
vmo handle<vmo>

包含字节的 vmo。

无默认值
offset uint64

该范围内第一个字节相对于 VMO 开头部分的偏移量。

例如,如果 offset 为零,则范围中的第一个字节是 VMO 中的第一个字节。

无默认值
size uint64

范围内的字节数。

例如,如果偏移量为 3,大小为 2,并且 VMO 以“abcdefg...”开头,那么范围包含“de”。

偏移量和大小的总和不得大于 VMO 的物理大小。

无默认值

联合

数据灵活 资源

fuchsia.mem/buffer.fidl 中定义

可能内嵌存储在 VMO 中的二进制数据。

适用于对性能敏感的协议,此类协议有时会接收少量二进制数据(即使用 bytes 提供更高效的数据),但还需要支持任意数量的数据(即需要在 Buffer 中外行提供的数据)。

序数变体类型说明
bytes vector<uint8>

消息中内嵌提供的二进制数据。

buffer Buffer

Buffer 中换行提供的二进制数据。