22得票8回答
共享内存,MPI和排队系统

我的Unix/Windows C++应用程序已经使用MPI实现了并行化:作业被分割成N个CPU,每个块都以并行方式执行,效率很高,速度扩展性非常好,工作完成得很好。 但是某些数据在每个进程中都是重复的,并且由于技术原因,这些数据不能轻松地通过MPI分割(...)。例如: 5 GB的静态数...

22得票2回答
C++11进程间原子操作和互斥锁

我有一个Linux程序,它会生成多个进程(fork),并通过POSIX共享内存进行通信。我希望每个进程都分配一个id(0-255)。我的想法是在共享内存区域中放置一个位向量(初始化为零),并原子地比较和交换一个位来分配id。 是否有c++11友好的方法来实现这一点?我可以创建一个原子位集吗?...

20得票1回答
如何在PHP和Boost库IPC之间进行通信?

我有一个使用共享内存进行通信的PHP客户端和服务器,现在我想使用Boost.Interprocess访问这个共享内存对象,我该如何访问它? server.php: function create_image($str){ // Create a blank image and add...

20得票3回答
我能否以某种方式与子进程共享异步队列?

我想使用队列将数据从父进程传递到通过 multiprocessing.Process 启动的子进程,但由于父进程使用 Python 的新 asyncio 库,所以队列方法需要是非阻塞的。据我所知,asyncio.Queue 用于任务间通信,不能用于进程间通信。此外,我知道 multiproce...

19得票4回答
IPC速度和比较

我试图实现一个涉及不同模块间IPC的实时应用程序。这些模块正在进行一些数据密集型处理。在原型中,我使用消息队列作为IPC的支柱(Activemq),这很容易(考虑到我完全是IPC新手),但速度非常慢。 这是我的情况: 我已经隔离了IPC部分,以便将来可以用其他方式改变它。 我有3周时间来...

19得票4回答
进程VS线程:两个进程能共享同一块共享内存吗?两个线程呢?

在思考了共享内存的整个概念之后,一个问题浮现出来: 两个进程能够共享同一块共享内存吗?两个线程可以共享同一块共享内存吗? 经过更加清晰的思考,我几乎可以确定两个进程可以共享同一块共享内存段,其中第一个是父进程,第二个是使用fork()创建的子进程,但是两个线程呢? 谢谢。

18得票4回答
Python进程之间的共享内存

我正在尝试找到一种在Python进程之间共享内存的方法。基本上,有些对象存在,多个Python进程需要能够读取(仅限读取)和使用(不可变)。目前,这是通过redis +字符串+cPickle实现的,但cPickle占用了宝贵的CPU时间,所以我不想使用它。我在互联网上看到的大多数Python共...

18得票6回答
在.NET中如何实现共享内存?

我有一个C++.NET应用程序和一个C#.NET应用程序。我想让它们通过共享内存进行通信。 .NET版本2.0如何实现呢? 主要想要共享队列对象。

18得票3回答
如何在Python中迭代字典代理?

我正在使用Python的multiprocessing.Manager来共享一个数据集,其中一个进程将生成它,其他进程将查看它。然而,我遇到了这样一种问题,即由manager.dict()返回的字典代理不支持iteritems()。 我可以遍历items(),但这意味着构造字典中所有项的新元...

18得票4回答
共享内存或mmap - Linux C/C++进程间通信

这个上下文涉及到进程间通信,其中一个进程(“服务器”)需要向运行在同一台机器上的多个监听进程(“客户端”)发送固定大小的结构体。 我非常熟练地使用Socket编程进行这项工作。为了使服务器和客户端之间的通信更快,减少复制的数量,我想尝试使用共享内存(shm)或mmaps。 操作系统是RHE...