rename sys_read_ready to read_ready

This commit is contained in:
ubuntu14 2015-12-22 10:37:01 +08:00
parent 67e6bd0470
commit 256d4cf6e2
3 changed files with 11 additions and 8 deletions

View File

@ -1,6 +1,9 @@
修改历史列表: 修改历史列表:
----------------------------------------------------------------------- -----------------------------------------------------------------------
391.1) 2015.12.22
391.1) compile: polarssl_io.cpp 中将 sys_read_ready 改名为 read_ready
390) 2015.12.20 390) 2015.12.20
390.1) feature: aio_handle 增加了几个设置方法,用来设置异步引擎的运行参数 390.1) feature: aio_handle 增加了几个设置方法,用来设置异步引擎的运行参数

View File

@ -209,7 +209,7 @@ void master_threads::run_once(ACL_VSTREAM* client)
// 等待连接有数据可读,当为 0 时则会立即返回,当 // 等待连接有数据可读,当为 0 时则会立即返回,当
// > 0 时则等待最多指定超时时间 // > 0 时则等待最多指定超时时间
if(acl_read_wait(fd, timeout > 0 ? timeout : -1) == 0) if(acl_read_wait(fd, timeout > 0 ? timeout : -1) == 0)
client->sys_read_ready = 1; client->read_ready = 1;
else if (service_on_timeout(client, NULL) == 0) else if (service_on_timeout(client, NULL) == 0)
continue; continue;
else else

View File

@ -314,10 +314,10 @@ int polarssl_io::read(void* buf, size_t len)
// 如果 SSL 缓冲区中还有未读数据,则需要重置流可读标志位, // 如果 SSL 缓冲区中还有未读数据,则需要重置流可读标志位,
// 这样可以触发 acl_vstream.c 及 events.c 中的系统读过程 // 这样可以触发 acl_vstream.c 及 events.c 中的系统读过程
if (ssl_get_bytes_avail((ssl_context*) ssl_) > 0) if (ssl_get_bytes_avail((ssl_context*) ssl_) > 0)
stream_->sys_read_ready = 1; stream_->read_ready = 1;
// 否则,取消可读状态,表明 SSL 缓冲区里没有数据 // 否则,取消可读状态,表明 SSL 缓冲区里没有数据
else else
stream_->sys_read_ready = 0; stream_->read_ready = 0;
return ret; return ret;
#else #else
@ -363,14 +363,14 @@ int polarssl_io::sock_read(void *ctx, unsigned char *buf, size_t len)
//logger(">>>non_block: %s, sys_ready: %s", //logger(">>>non_block: %s, sys_ready: %s",
// io->non_block_ ? "yes" : "no", // io->non_block_ ? "yes" : "no",
// vs->sys_read_ready ? "yes":"no"); // vs->read_ready ? "yes":"no");
// 非阻塞模式下,如果 sys_read_ready 标志位为 0则说明有可能 // 非阻塞模式下,如果 read_ready 标志位为 0则说明有可能
// 本次 IO 将读不到数据,为了防止该读过程被阻塞,所以此处直接 // 本次 IO 将读不到数据,为了防止该读过程被阻塞,所以此处直接
// 返回给 polarssl 并告之等待下次读,下次读操作将由事件引擎触发, // 返回给 polarssl 并告之等待下次读,下次读操作将由事件引擎触发,
// 这样做的优点是在非阻塞模式下即使套接字没有设置为非阻塞状态 // 这样做的优点是在非阻塞模式下即使套接字没有设置为非阻塞状态
// 也不会阻塞线程,但缺点是增加了事件循环触发的次数 // 也不会阻塞线程,但缺点是增加了事件循环触发的次数
if (io->non_block_ && vs->sys_read_ready == 0) if (io->non_block_ && vs->read_ready == 0)
{ {
int ret = acl_readable(fd); int ret = acl_readable(fd);
if (ret == -1) if (ret == -1)
@ -385,8 +385,8 @@ int polarssl_io::sock_read(void *ctx, unsigned char *buf, size_t len)
// else: ret == 1 // else: ret == 1
} }
// acl_socket_read 内部会根据 vs->sys_read_ready 标志位决定是否需要 // acl_socket_read 内部会根据 vs->read_ready 标志位决定是否需要
// 以超时方式读数据,同时会自动清除 vs->sys_read_ready 标志位 // 以超时方式读数据,同时会自动清除 vs->read_ready 标志位
int ret = acl_socket_read(fd, buf, len, vs->rw_timeout, vs, NULL); int ret = acl_socket_read(fd, buf, len, vs->rw_timeout, vs, NULL);
if (ret < 0) if (ret < 0)