当前位置:主页>销售管理软件> 列表

求多个客户端一个服务器端的多线程解决方案

企业管理软件版1楼: 现有多个(几十个)Gprs的客户端,数据传输量小,由服务器来向各个客户端发送命令,并能得到各个客户端返回的数据。打算用多线程来做,即来一个客户端连接,就开启一个线程,但我对delphi不熟,或者说对socket编程都没接触过,初步估计应该使用TServerClientThread,和TServerSocket,但我改怎么样去开启线程呢,客户端发来的数据,可各线程如何区分,感觉是不是不应该需要去区分,否则就没有开多线程的必要了,直接一个线程好了,这两个组件对此是不是有自己的解决方案,查了好多书和网上资料,有些说有但没讲怎么实现,谢谢了,

2楼: 用最新的INDY控件,其Server端的空间直接内嵌支持多线程,拿来用就行了服装进销存软件破解

3楼: 我写有TServerClientThread,和TServerSocket的多线程代码,跟你的需求差不多,也是一个服务器对应多个客户端。客户端主动请求发送数据,服务器发送数据给请求的客户端。需要的话可以Q我39913823

4楼: Socket的TCP的模型本来就是这样的啊,有一个监听线程监听访问请求,接受一个请求的时候它就建立一个新的线程。另外用TServerSocket 的话,要注意粘包的问题,建议使用其他的控件,例如上面的朋友说的Indy

5楼: TServerSocket监听到数据时会新建一个线程TServerClientThread,然后执行线程的ClientExecute方法

6楼: 谢谢大家了,


to:tonyliu我加了你了,可你不在线
to:arhaha,kkkchenA能说详细点吗?我没用过Indy,手头也没这方面的资料,假如可能能给个简单的源码的示例吗?谢谢了,
给大家添麻烦不好意思

企业管理软件版7楼: 我的邮箱:jhoper@163.com,谢了

8楼: delphi6,7的DEMO中就有Indy的例子,不止一个哟

9楼: 还不散分呀,看来帮错忙了

10楼: 国庆回家了,不好意思,好几天都没上网了,再问个问题,我该怎么卸载delphi6里的indy8,然后安装indy9,本来可以再开个问题的,但无奈没什么分了,不好意思,答完就散分,大家放心好了,

11楼: 用安装光盘来卸载!

12楼: 多人接受答案了。生产管理软件免费版