首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

多进程共享一个socket,解决思路

2012-01-16 
多进程共享一个socket,急啊!在网络游戏编程中,假如客户端提供房间让玩家登录游戏,比如说四国军旗,进入游戏

多进程共享一个socket,急啊!
在网络游戏编程中,假如客户端提供房间让玩家登录游戏,比如说四国军旗,进入游戏后会产生一个新的进程,我想问:客户端进程和四国军旗游戏进程通过wsaduplicatesocket共享一个socket和服务器端进行通信,某个时间只能是一个进程利用这个socket和服务端通信,怎么来协调这个socket,使客户端进程和四国军旗游戏进程很好的交替和服务器很好的通信?想了很久,查了一些资料,但不知道怎么来做?急啊!如果可以提供一部分代码,那非常感激!这是我所有的分了,各位帮帮忙!

[解决办法]
共享原来socket是unix上边的概念,unix下边的早期网络服务器一般都是由父进程
bind
listen
accept

然后子进程read,write,这两个进程共享socket,但是只有一个进程读写。包括unix下边现在的inetd进程也是这样的。

另外有很多大型服务器也是这样的架构,有点有很多了


[解决办法]
共享SOCKET,要两个地方协调和维护,是不是增加了难度.我觉得更好还是使用客户端与服务器通信,然后与游戏客户端进程之间共享数据或是使用MSQUEUE
[解决办法]
象军旗这种游戏的通信实现可能和楼主的想法不一样

可能军旗游戏会自己建立一个到服务器的连接,

热点排行