TTcpServer控件写多线程问题???

HW2007NAME 2017-09-27 11:58:45
我用TTcpServer控件自已写的一个TcpServer服务程序,在OnAccept事件中这样实现多线程,不知道可行不,经过我测试,多个客户连接上传文件,出了超时现像,用多线程不是不应该出现这类问题,请大神帮我看一下,TTcpServer控件做多线程服务中,能否在OnAccept事件中像我这样写代码???我不懂这个控件,我想我是有点混乱的,请大神多指点一下,谢谢!!!

procedure TMYTcpServer.PD_OnNewAccept(Sender:TObject;vClientSocket: TCustomIpClient);
var
mTcpSeverThr:TSeverReceiveThread;
begin
mTcpSeverThr := TSeverReceiveThread.Create(vClientSocket);//创建接收线程,并挂起
mTcpSeverThr.RunMsg := PD_ThrRunMsg; //设置线程中运行进度信息返回到主窗口的一个方法 (线程中用Synchronize()调用)
mTcpSeverThr.ToMsg := OnMessage; //线程普通信息返回到主窗口的一个方法(线程中用Synchronize()调用)
mTcpSeverThr.Start; //起动线程
while vClientSocket.Connect do //判断当前客户端Socket是连接,
begin
Forms.Application.ProcessMessages;
if Not Assigned(mTcpSeverThr) then Exit;
end;
end;
...全文
368 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

1,221

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧