C++ 哪种技术比Win32命名管道或WinSock 2更好?
我有一个Visual C/C++程序,它将通过局域网(LAN)与其他程序(本地和非本地)通信。以前我使用win32内存映射文件/事件进行本地通信。现在我想扩展我的程序以支持网络通信 由于MMF不支持网络进程间通信(术语应为进程内Com”),很明显,为了通过本地网络传输数据,我必须使用Win32命名管道或WinSock2机制 在这里,我的唯一意图是仅构建网络内进程通信,因此哪种机制在以下因素方面表现更好:C++ 哪种技术比Win32命名管道或WinSock 2更好?,c++,winapi,visual-c++,winsock,named-pipes,C++,Winapi,Visual C++,Winsock,Named Pipes,我有一个Visual C/C++程序,它将通过局域网(LAN)与其他程序(本地和非本地)通信。以前我使用win32内存映射文件/事件进行本地通信。现在我想扩展我的程序以支持网络通信 由于MMF不支持网络进程间通信(术语应为进程内Com”),很明显,为了通过本地网络传输数据,我必须使用Win32命名管道或WinSock2机制 在这里,我的唯一意图是仅构建网络内进程通信,因此哪种机制在以下因素方面表现更好: 单服务器多客户端-(双工->从两端发送和接收) 通过慢速局域网传输数据 服务器是基本的Vi
- 单服务器多客户端-(双工->从两端发送和接收)
- 通过慢速局域网传输数据
- 服务器是基本的Visual C/C++程序,客户端是由另一个进程加载的DLL,因此功能应该是轻量级的
- 传输速度(数据应以更高的频率在进程之间传输)
谢谢。本地主机之外的命名管道仍然通过TCP/IP堆栈。我无法想象一旦你跨过这个门槛,性能会变得更好,而且有很多途径认为它会变得更糟(即tcp/ip上的管道开销)。@WhozCraig你更喜欢WinSock?WinSock是他们对为Windows提供套接字的库的称呼,没有WinSock,Windows中就没有tcp/ip。也就是说,命名管道将使用WinSock处理网络上的流量,它别无选择。命名管道为通信增加了令人难以置信的复杂性。必须在主机上启用文件和打印机共享才能访问,Windows防火墙必须允许连接,并且您需要访问服务器,这可能需要使用Windows凭据并正确配置整个服务器。我会避免使用它。@Havenard你喜欢什么?关于性能?Winsock。命名管道保存服务器上的所有数据,并且可能仍然通过TCP使用NetBEUI。相当古老的东西,可以追溯到盖茨相信互联网之前。