StreamPeerGZIP
继承: StreamPeer < RefCounted < Object
能够处理 GZIP 和 deflate 压缩/解压缩的流对等体。
描述
这个类能够使用 GZIP/deflate 对数据进行流式压缩或解压缩。压缩或解压缩经过网络发送的文件时尤其有用,不必事先分配内存。
使用 start_compression(或 start_decompression)开启流之后,在这个流上调用 StreamPeer.put_partial_data 会对数据进行压缩(或解压缩)并写入内部缓冲区。调用 StreamPeer.get_available_bytes 会返回内部缓冲区中待处理的字节数,StreamPeer.get_partial_data 会从中获取压缩后(或解压后)的字节。流结束后,你必须调用 finish 来确保正确清空内部缓冲区(请务必最后再调用一次 StreamPeer.get_available_bytes,检查此时是否还有需要读取的数据)。
方法
void | clear ( ) |
finish ( ) | |
start_compression ( bool use_deflate=false, int buffer_size=65535 ) | |
start_decompression ( bool use_deflate=false, int buffer_size=65535 ) |
方法说明
void clear ( )
清空该流,重设内部状态。
Error finish ( )
终止该流,对缓冲中剩余的数据块进行压缩或解压缩。
Error start_compression ( bool use_deflate=false, int buffer_size=65535 )
开始压缩模式的流,缓冲区大小为 buffer_size
,如果 use_deflate
为 true
则使用 deflate 而不是 GZIP。
Error start_decompression ( bool use_deflate=false, int buffer_size=65535 )
开始解压模式的流,缓冲区大小为 buffer_size
,如果 use_deflate
为 true
则使用 deflate 而不是 GZIP。
© 版权所有 2014-present Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0). Revision b1c660f7
.
Built with Sphinx using a theme provided by Read the Docs.