swoole源码分析之Buffer的clear操作

版权声明:转载请注明来源 https://blog.csdn.net/u013702678/article/details/82954020

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的属性信息
}

猜你喜欢

转载自blog.csdn.net/u013702678/article/details/82954020