我有一个 Java 程序,它使用本地主机上的套接字与 C++ 程序进行通信。通过转而使用本机操作系统管道,我是否可以期望获得任何性能(延迟、带宽或两者兼而有之)?目前我主要对 Windows 感兴趣,但也欢迎任何与 Unix/Linux/OSX 相关的见解。
编辑:澄清:两个程序在同一主机上运行,当前通过套接字进行通信,即通过与 localhost: 建立 TCP/IP 连接。我的问题是切换到使用(本地)命名管道(Windows)或其 Unix 等效项(AF_UNIX 域套接字?)的潜在性能优势是什么。
肯是对的。命名管道在 Windows 上肯定更快。在 UNIX 和 Linux 上,您需要 UDS 或本地管道。一样的东西,不同的名字。
对于本地通信来说,除了套接字之外的任何东西都会更快。这包括内存映射文件、本地管道、共享内存、COM 等。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)