Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
af7d630e
T
TDengine
项目概览
taosdata
/
TDengine
1 年多 前同步成功
通知
1185
Star
22016
Fork
4786
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
TDengine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
af7d630e
编写于
3月 23, 2022
作者:
U
ubuntu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
handle except
上级
e11d53f5
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
19 addition
and
21 deletion
+19
-21
source/libs/transport/src/transCli.c
source/libs/transport/src/transCli.c
+19
-21
未找到文件。
source/libs/transport/src/transCli.c
浏览文件 @
af7d630e
...
...
@@ -169,6 +169,19 @@ static void destroyThrdObj(SCliThrdObj* pThrd);
pMsg = transQueueRm(&conn->cliMsgs, i); \
} \
} while (0)
#define CONN_GET_NEXT_SENDMSG(conn) \
do { \
int i = 0; \
do { \
pCliMsg = transQueueGet(&conn->cliMsgs, i++); \
if (pCliMsg && 0 == pCliMsg->sent) { \
break; \
} \
} while (pCliMsg != NULL); \
if (pCliMsg == NULL) { \
goto _RETURN; \
} \
} while (0)
#define CONN_HANDLE_THREAD_QUIT(thrd) \
do { \
...
...
@@ -203,19 +216,12 @@ static void* cliWorkThread(void* arg);
bool
cliMaySendCachedMsg
(
SCliConn
*
conn
)
{
if
(
!
transQueueEmpty
(
&
conn
->
cliMsgs
))
{
SCliMsg
*
pCliMsg
=
NULL
;
int
i
=
0
;
do
{
pCliMsg
=
transQueueGet
(
&
conn
->
cliMsgs
,
i
++
);
if
(
pCliMsg
&&
0
==
pCliMsg
->
sent
)
{
break
;
}
}
while
(
pCliMsg
!=
NULL
);
if
(
pCliMsg
==
NULL
)
{
return
false
;
}
CONN_GET_NEXT_SENDMSG
(
conn
);
cliSend
(
conn
);
}
return
false
;
_RETURN:
return
false
;
}
void
cliHandleResp
(
SCliConn
*
conn
)
{
SCliThrdObj
*
pThrd
=
conn
->
hostThrd
;
...
...
@@ -565,17 +571,7 @@ void cliSend(SCliConn* pConn) {
assert
(
!
transQueueEmpty
(
&
pConn
->
cliMsgs
));
SCliMsg
*
pCliMsg
=
NULL
;
int
i
=
0
;
do
{
pCliMsg
=
transQueueGet
(
&
pConn
->
cliMsgs
,
i
++
);
if
(
pCliMsg
&&
0
==
pCliMsg
->
sent
)
{
break
;
}
}
while
(
pCliMsg
!=
NULL
);
if
(
pCliMsg
==
NULL
)
{
return
;
}
CONN_GET_NEXT_SENDMSG
(
pConn
);
pCliMsg
->
sent
=
1
;
STransConnCtx
*
pCtx
=
pCliMsg
->
ctx
;
...
...
@@ -630,6 +626,8 @@ void cliSend(SCliConn* pConn) {
pConn
->
writeReq
.
data
=
pConn
;
uv_write
(
&
pConn
->
writeReq
,
(
uv_stream_t
*
)
pConn
->
stream
,
&
wb
,
1
,
cliSendCb
);
return
;
_RETURN:
return
;
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录