一个如何clientserver和多个进行serversocket多线程连接?(100分)

  • 主题发起人 主题发起人 zaiai2003
  • 开始时间 开始时间
Z

zaiai2003

Unregistered / Unconfirmed
GUEST, unregistred user!
serversocket可以和多个clientsocket连接,但是如果一个客户端需要和多个serversocket
段进行连接,是否可以通过客户端线程来建立多个连接。请赐教!
 
应逐个发送。
 
--->一个客户端需要和多个serversocket段进行连接
那么你必须建立多个clientsocket, 每个clientsocket对应一个serversocket, 当然这些clientsocket可以执行在不同的thread中
 
Another_eYes:你好!我现在是需要满足这些条件:我这个程序一方面作为服务器,一方面作为客户端。由于我的服务同时服务于多个客户端,所以我的客户端需要建立多个连接。在我的印象中,服务器可以设置为多线程,现在我想将客户端也设置为多线程,这样可以节约资源。Tclientsocketthread有这个对象吧!
其实,我想请您确认一下,必须创建多个clientsocket吗?
 
你一共同时跑几个服务程序呀
 
我的程序作为一个中介。作为服务器,他服务于多个客户端;作为客户端它需要访问其他机器上的服务。我想一个程序担当两个角色。
 
你在自己程序里放一个clientsocket和serversocket,不就可以当服务器,又可以做客户端了。
 
那你的服务器最好只用于服务,再做一个协调各服务器的程序,用来在各个服务器间传递信息。
还有,最好还是用Indy或者ICS吧
 
my question is how to establish the connections between my clients and others servers. because of dozens of connection, i want to use one clientsocket to connect more.
 
如果做中转服务,如果你想标识是中转的哪个client的数据,那么最简单的办法就是每个accept的client都建立一个clientsocket连到其它服务器。
我想你搞混了一个概念:TClientSocket和TServerSocket是不同的,
你可以把TServerSocket理解成n+1个Socket的列表, 其中1个socket光负责accept, 其它socket是和每个client的具体连接,所谓TServerSocket的多线程模式其实就是指这n+1个socket是运行在不同的线程中。但是TClientSocket只有一个连接。所以没有你想象中的ClientSocket的多线程模式,只有你开多个线程,然后在不同线程中运行不同的ClientSocket这种多线程。
 
多人接受答案了。
 
后退
顶部