Questions tagged «ipc»

IPC代表进程间通信,代表一组在线程和进程之间交换数据和消息的方法。

5
在localhost上,如何选择空闲端口号?
我正在尝试进行进程间通信,并且由于无法弄清楚如何在Windows下使用命名管道,因此我认为我将使用网络套接字。一切都发生在本地。服务器能够在单独的进程中启动从属服务器,并在某些端口上进行侦听。奴隶完成工作并将结果提交给主人。如何确定哪个端口可用?我假设我无法在端口80或21上收听? 我正在使用Python,如果这样做会减少选择的余地。 谢谢!
161 python  sockets  ipc  port 

4
命名管道示例
我如何编写一个简单的(最低工作所需的裸机)测试应用程序,以说明如何使用IPC /命名管道? 例如,如何编写一个控制台应用程序,其中程序1向程序2说“ Hello World”,程序2接收消息并向程序1回复“ Roger That”。
130 c#  ipc  named-pipes 

7
结合使用node.js和Python
Node.js非常适合我们的Web项目,但是很少有需要Python的计算任务。我们已经为他们准备了Python代码。我们非常关心速度,如何以异步非阻塞方式从node.js调用Python“工作者”的最优雅方法是什么?
127 python  node.js  ipc 

2
Linux中具有多个线程的信号处理
在Linux中,当程序(可能具有多个线程)接收到诸如SIGTERM或SIGHUP之类的信号时会发生什么? 哪个线程拦截信号?多个线程可以得到相同的信号吗?是否有专门用于处理信号的特殊线程?如果不是,那么在处理信号的线程内部会发生什么?信号处理程序例程完成后,如何恢复执行?
119 c  linux  multithreading  signals  ipc 


10
Java和C / C ++之间最快的(低延迟)进程间通信方法
我有一个Java应用程序,通过TCP套接字连接到用C / C ++开发的“服务器”。 应用程序和服务器都在同一台计算机上运行,​​这是一个Solaris机器(但我们最终正在考虑迁移到Linux)。交换的数据类型是简单的消息(登录,登录ACK,然后客户端要求某些内容,服务器答复)。每个消息大约300字节长。 当前,我们正在使用套接字,并且一切都很好,但是我正在寻找使用IPC方法交换数据(更快的延迟)的更快方法。 我一直在研究网络,并提出了以下技术的参考: 共享内存 管道 s列 以及所谓的DMA(直接内存访问) 但是我找不到对它们各自性能的正确分析,也找不到如何在JAVA和C / C ++中实现它们(以便它们可以相互通信)的方法,但也许我可以想象如何做。 在这种情况下,任何人都可以评论每种方法的性能和可行性吗?任何指向有用的实现信息的指针/链接? 编辑/更新 在我到达这里的评论和答案之后,我找到了有关Unix Domain Sockets的信息,该信息似乎是通过管道构建的,将为我节省整个TCP堆栈。它是特定于平台的,因此我计划使用JNI或juds或junixsocket对其进行测试。 下一个可能的步骤是直接实现管道,然后实现共享内存,尽管我已经被警告过额外的复杂性... 谢谢你的帮助
100 java  c++  performance  ipc  latency 


8
.NET进程间通信的最佳选择是什么?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 6年前关闭。 改善这个问题 我应该使用命名管道还是.NET Remoting与计算机上正在运行的进程进行通信?
82 c#  .net  process  ipc 

4
比较Unix / Linux IPC
Unix / Linux提供了许多IPC:管道,套接字,共享内存,dbus,消息队列... 每种应用最适合的应用是什么,它们的性能如何?
78 linux  unix  ipc 

6
使用哪种Linux IPC技术?
我们仍处于项目的设计阶段,但我们正在考虑在嵌入式Linux内核上具有三个独立的进程。进程之一是通信模块,该模块处理通过各种介质往返于设备的所有通信。 其他两个过程将需要能够通过通信过程发送/接收消息。我正在尝试评估Linux提供的IPC技术。其他进程将发送的消息的大小将有所不同,从调试日志到流媒体,速率约为5 Mbit。同样,媒体可能同时流入和流出。 您将为该应用建议哪种IPC技术? http://en.wikipedia.org/wiki/进程间通信 如果发生任何变化,处理器的运行速度约为400-500 Mhz。无需跨平台,仅Linux即可。需要使用C或C ++实现。
74 linux  ipc 

16
跨平台IPC [关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 8个月前关闭。 改善这个问题 我正在寻找有关可能的IPC机制的建议: 跨平台(至少Win32和Linux) 易于在C ++和最常用的脚本语言(perl,ruby,python等)中实现。 最后,从编程的角度来看简单易用! 我有什么选择?我正在Linux下进行编程,但我希望将来编写的内容可以移植到其他OS。我考虑过使用套接字,命名管道或诸如DBus之类的东西。

1
Unix域套接字如何区分多个客户端?
TCP具有元组对(IP地址/端口/类型)来告诉一个客户端与另一个客户端。UDP传递客户端IP和端口。unix域如何跟踪不同的客户端? 换句话说,服务器创建一个绑定到某个路径的套接字,例如/ tmp / socket。2个或更多客户端连接到/ tmp / socket。底层发生了什么,可跟踪来自client1和client2的数据?我想象网络堆栈在域套接字中不起作用,所以内核在这里完成所有工作吗? 是否有unix域协议格式,例如IP协议格式和TCP / UDP格式?域套接字数据报协议的格式是否发布在某处?每个Unix是否有所不同,或者类似POSIX的标准吗? 感谢您的照明。我找不到任何解释此信息的信息。每个来源都只是简单介绍了如何使用域套接字。
73 linux  sockets  unix  ipc 

4
消息队列在Linux中过时了吗?
我最近在Linux中一直在使用消息队列(系统V,但是POSIX也可以),它们对于我的应用程序似乎很完美,但是在阅读了《 Unix编程的艺术》之后,我不确定它们是否真的是一个不错的选择。 http://www.faqs.org/docs/artu/ch07s02.html#id2922148 System V IPC的上层消息传递层已大大停用。在需要执行互斥锁定和在同一台计算机上运行的进程之间进行一些全局数据共享的情况下,由共享内存和信号量组成的较低层仍然具有重要的应用程序。这些System V共享内存功能演变为POSIX共享内存API,在Linux,BSD,MacOS X和Windows下受支持,但经典MacOS不支持。 http://www.faqs.org/docs/artu/ch07s03.html#id2923376 Linux和其他现代Unix中都有System V IPC功能。但是,由于它们是传统功能,因此并不经常使用。到2003年中期为止,Linux版本仍存在错误。似乎没有人足够在意修复它们。 在最新的Linux版本中,System V消息队列是否仍然存在错误?我不确定作者是否认为POSIX消息队列应该正常吗? 似乎套接字是几乎所有对象(?)的首选IPC,但是我看不到用套接字或其他方法实现消息队列是多么简单。还是我想得太复杂了? 我不知道与嵌入式Linux合作是否有意义?

7
如何让2个JVM互相交谈
我有以下情况: 我有2个JVM进程(实际上是2个java进程单独运行,而不是2个线程)在本地计算机上运行。我们称它们ProcessA为ProcessB。 我希望他们彼此交流(交换数据)(例如,ProcessA发送消息ProcessB以执行某项操作)。 现在,我通过编写一个临时文件来解决此问题,并且这些过程会定期扫描此文件以获取消息。我认为这种解决方案不是很好。 什么是实现我想要的更好的选择?


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.