月
月满C楼
Unregistered / Unconfirmed
GUEST, unregistred user!
客户端发消息到服务器端,通过服务器的ServerSocket如何将该消息转发到另外一个客户端?
目前使用的办法是在服务器端维护一组TCustomWinSocket//TInfoClientList
type
TInfoClient=record
Handle: integer;
//客户端套接字句柄
Socket:TCustomWinSocket;
//客户端套接字
Name:string;
//客户端计算机名称
Address:string;
//客户端计算机IP地址
Used: boolean;
//客户端联机标志
UserNO:string;
end;
type TInfoClientList=array of TInfoClient;
数组来实现,由于考虑到一台主机又多个用户客户端的盒子情况,所以添加了唯一标识UserNO来实现
但通过这种方法来实现的时候总需要使用循环TInfoClientList数组来实现信息的转发
当然目前我开发的系统同时用户数最多就200,这个效率应该是没问题。
但如果用户数多起来甚至达到2000的话,我估计这样循环转发消息将会带来服务器出来不过来问题
目前使用的办法是在服务器端维护一组TCustomWinSocket//TInfoClientList
type
TInfoClient=record
Handle: integer;
//客户端套接字句柄
Socket:TCustomWinSocket;
//客户端套接字
Name:string;
//客户端计算机名称
Address:string;
//客户端计算机IP地址
Used: boolean;
//客户端联机标志
UserNO:string;
end;
type TInfoClientList=array of TInfoClient;
数组来实现,由于考虑到一台主机又多个用户客户端的盒子情况,所以添加了唯一标识UserNO来实现
但通过这种方法来实现的时候总需要使用循环TInfoClientList数组来实现信息的转发
当然目前我开发的系统同时用户数最多就200,这个效率应该是没问题。
但如果用户数多起来甚至达到2000的话,我估计这样循环转发消息将会带来服务器出来不过来问题