社区
VCL组件使用和开发
帖子详情
TClientSocket->Socket->SendText()能在两个线程中使用吗?
Ronal_Lee
2009-12-08 05:14:20
前提 :TClientSocket设置为非阻塞。
请问 能在两个线程中 使用同一个TClientSocket控件的发送字符串的函数(TClientSocket->Socket->SendText())吗?会产
生多个线程互斥问题吗?
谢谢
...全文
129
6
打赏
收藏
TClientSocket->Socket->SendText()能在两个线程中使用吗?
前提 :TClientSocket设置为非阻塞。 请问 能在两个线程中 使用同一个TClientSocket控件的发送字符串的函数(TClientSocket->Socket->SendText())吗?会产 生多个线程互斥问题吗? 谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xjq2003
2009-12-10
打赏
举报
回复
必须做处理
yhec
2009-12-09
打赏
举报
回复
不能直接用,需互斥处理
zhgwbzhd
2009-12-08
打赏
举报
回复
如果保证两个机器都开机,且都联网正确。建议使用TCP。
如果不能保证,只好用UDP了。
僵哥
2009-12-08
打赏
举报
回复
[Quote=引用 2 楼 ronal_lee 的回复:]
引用楼主 ronal_lee 的回复:
前提 :TClientSocket设置为非阻塞。
请问 能在两个线程中 使用同一个TClientSocket控件的发送字符串的函数(TClientSocket->Socket->SendText())吗?会产
生多个线程互斥问题吗?
谢谢
请问,使用lock()跟控件是阻塞和非阻塞有关系吗?还有就是什么情况下会出现“不能一次性全部发送出去”?谢谢
[/Quote]
先理解什么是阻塞和非阻塞,然后再考虑清楚在什么情况下会阻塞什么。再看看MSDN当中的对于API函数
send
的注解。
Ronal_Lee
2009-12-08
打赏
举报
回复
[Quote=引用楼主 ronal_lee 的回复:]
前提 :TClientSocket设置为非阻塞。
请问 能在两个线程中 使用同一个TClientSocket控件的发送字符串的函数(TClientSocket->Socket->SendText())吗?会产
生多个线程互斥问题吗?
谢谢
[/Quote]
请问,使用lock()跟控件是阻塞和非阻塞有关系吗?还有就是什么情况下会出现“不能一次性全部发送出去”?谢谢
僵哥
2009-12-08
打赏
举报
回复
ClientSocket->Socket->Lock();
try{
//在这里使用
//
注意:
SendText并不能够保证把你预发送的数据一次性全部发送出去,请判断返回值,当不为预期发送的数据量时请继续发送后续数据
}__finally{
ClientSocket->Socket->Unlock();
}
BCB
Socket
通信
TCl
ient
Socket
///Cl
ient
Socket
1->
Socket
->
Send
Text
(Edit1->
Text
+ "下线了"); ShowMessage("已断开连接"); } ///---------------------------------------------------------------------------正文 ...
TServer
Socket
和
TCl
ient
Socket
的
使用
TServer
Socket
和
TCl
ient
Socket
的
使用
(2009-08-24 09:29:52) 转载 标签: 杂谈 在网络编程
中
,Win
Socket
API编程是最基本,也是最麻烦的地方(说句不怕影响形象的话,我对此就是一知半解)。但是,如果你是
使用
C++...
TCl
ient
Socket
和TServer
Socket
属性,方法,事件
Cl
ient
Socket
和Server
Socket
,它们对Winsock的API进行了很好的封装生成了
TCl
ient
Socket
和Tserver
Socket
两个
类(控件)。通过这
两个
控件,可以很方便的生成TCP/IP网络应用程序。
TCl
ient
Socket
类是客户端的
Socket
类,...
delphi的
socket
通讯
Cl
ient
Socket
组件为客户端组件。它是通信的请求方,也就是说,它是主动地与... Server
Socket
组件可以同时接受一个或多个Cl
ient
Socket
组件的连接请求,并与每个Cl
ient
Socket
组件建立单独的连接,进行单独的通信。因此
TServer
Socket
与
TCl
ient
Socket
使用
说明
<br /> Port 为服务器触活后监听的端口号<br />
Socket
有所有端口操作功能 (如:得到所有对应的客户端连接等等)<br />事件<br />OnListen<br /> 服务器激活,监听端口时触发<br />OnCl
ient
Connect<br /> ...
VCL组件使用和开发
604
社区成员
13,460
社区内容
发帖
与我相关
我的任务
VCL组件使用和开发
C++ Builder VCL组件使用和开发
复制链接
扫一扫
分享
社区描述
C++ Builder VCL组件使用和开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章