swoole_buffer提供的clear操作用于清理缓存区数据。
swoole_buffer->clear()
执行此操作后,缓存区将重置。swoole_buffer对象就可以用来处理新的请求了。
下面我们看看其实现过程。
static PHP_METHOD(swoole_buffer, clear)
{
swString *buffer = swoole_get_object(getThis());//获取swoole内部封装对象buffer,其类型为swString
buffer->length = 0;//设置buffer中数据长度信息为0
buffer->offset = 0;//设置buffer中数据起始位置为0
zend_update_property_long(swoole_buffer_class_entry_ptr, getThis(), ZEND_STRL("length"), 0 TSRMLS_CC);//更新swoole_buffer的属性信息
}