社区
网络及通讯开发
帖子详情
关于IdTCPServer的问题。
zhgwbzhd
2008-10-22 04:04:27
在他的Execute事件里,
如果直接对一个全局的 TList实例进行 add/del操作,会有危险的。
那么采用什么方法较好呢?
我想采用 Synchronize(...),但是要直接把本次连接的TIdPeerThread add/del.
该如何操作呢?
谢谢各位!
...全文
86
3
打赏
收藏
关于IdTCPServer的问题。
在他的Execute事件里, 如果直接对一个全局的 TList实例进行 add/del操作,会有危险的。 那么采用什么方法较好呢? 我想采用 Synchronize(...),但是要直接把本次连接的TIdPeerThread add/del. 该如何操作呢? 谢谢各位!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zhgwbzhd
2008-10-23
打赏
举报
回复
嗯,感谢两位。
yumikoo
2008-10-22
打赏
举报
回复
Synchronize要在单独的线程里使用。
另外TCriticalSection临界点也是可选。
yuanreid
2008-10-22
打赏
举报
回复
采用临界区,在临界区内对TList进行操作就是线程安全的。
VCL类库中的TCriticalSection,对临界区有比较方便的封装接口。
急问:关于
id
tcpserver
收包错位的
问题
急问:关于
id
tcpserver
收包错位的
问题
Delphi / Windows SDK/APIhttp://www.delphi2007.net/DelphiNetwork/html/delphi_20061204132847206.html 想用
id
tcpserver
做一个主站软件,接受远程终端通过GPRS功能发送的报文。 在
Id
TCPServer
Execute里用AThread...
delphi2009(Lazarus)中indy10 的
Id
tcpserver
断开客户端连接报错
问题
的解决办法
我们常用
Id
TCPServer
.Active := false;来关闭
Id
tcpserver
,但这样会出卡机,并且操作也不会成功,后来,我改为这样: procedure TfrmMain.ActStopExecute(Sender: TObject); var i: integer; AList: TList; begin AList :=
Id
TCPServer
.Cont
id
tcpserver
多线程同步
问题
方法1:临界区……Delphi/Pascal code?//全局的FLockUI: TCriticalSection;//临界区还有一个TRTLCriticalSection,区别?俺不清楚。反正找个短的来用吧。 //改写文本function WriteTxt(Msg: string): Boolean;begin // .....把接收的数据写入文本的一些程序...... //if 某些条件
关于
id
tcpserver
收包错位的
问题
想用
id
tcpserver
做一个主站软件,接受远程终端通过GPRS功能发送的报文。在
Id
TCPServer
Execute里用AThread.connection.ReadLn读接收
网络及通讯开发
1,317
社区成员
8,874
社区内容
发帖
与我相关
我的任务
网络及通讯开发
C++ Builder 网络及通讯开发
复制链接
扫一扫
分享
社区描述
C++ Builder 网络及通讯开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章