问题标签 [inter-process-communicat]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - RMI 对 Java 中 IPC 的支持
我浏览了有关 java Inter Process Communication 的所有链接,但我无法得到确切的答案。我正在编写一个 java 服务,我想与我的系统上运行的服务进行通信。该服务可以是 C、C++ 或在硬件设备上运行的服务。哪个是最好的方法?在这种情况下可以使用 RMI 吗?如果是,我该如何实施?
java - 将 CORBA 与 C++ 和 Java 结合使用的 IPC
我决定使用 CORBA 在 C++ 服务和 java 服务之间进行通信。我想知道是否可以使用 CORBA 来调用 C++ 库和 java 库,就像我们在应用程序中调用 dll 一样。如果有人帮助我做出正确的决定,那将非常有帮助!
php - PHP 中有没有办法像在 Java EE 中一样使用持久数据?(在 PHP 线程之间共享对象)没有会话也没有缓存/DB
PHP中有没有办法使用“会话外”变量,这些变量不会像Java服务器一样在每个连接处加载/卸载?
请原谅我缺乏准确性,我不知道如何以正确的方式编写它。
主要想法是有这样的东西:
我已经使用shmop
和其他奇怪的东西做了这样的事情,但是如果在“纯 PHP”中有一种“干净”的方法可以在不使用缓存系统(我认为 APC、Redis ...)或数据库的情况下做到这一点。
编辑 1:
由于人们(感谢他们为我花时间)以同样的方式回答我的会话,我添加了一个我错过写的约束:请不要会话。
编辑 2:
似乎唯一能做这种事情的 PHP 本地方法是共享内存 ( shmop
) 和命名管道。我会使用托管方式来访问共享对象,而不考虑内存管理(共享内存块大小)或系统问题(管道)。
然后,我在网上浏览了一个 PHP 模块/库,它提供了执行此操作的函数/方法:我什么也没找到。
编辑 3:
在对@KFO 指出的方式进行了一些研究之后,似乎putenv
/setenv
不是用来处理对象的(我会避免序列化)。因此,它解决了诸如字符串或数字之类的短“事物”的问题,但不适用于更大/更复杂的对象。
使用“env 方式”和另一种方法来处理更大的对象将是不连贯的,并且会增加代码的复杂性和可维护性。
编辑 4:
找到了这个:DBus(GREE Lab DBus),但我没有工具可以在工作中测试它。有人测试过吗?
我对每一个建议都持开放态度。
谢谢
编辑5(“答案”):
由于 DBus 并不是我想要的(需要安装第三方模块,没有“严重”的应用证据),我现在使用的 Memcache 已经证明了它的可靠性(在@PeterM 评论之后,见下文)。
python - python中2个程序之间的通信
我有 2 个程序都在 python 中,一个是第 3 方并且已经制作好了。我想在前台运行一个,在后台运行一个。我想在两个程序之间建立通信,所以我可以告诉前台的程序做某事,然后它告诉另一个程序做某事。比如在前台程序上我按下一个按钮,然后告诉其他程序做某事。最好的方法是什么?
我知道我以前问过一个关于这个的问题,但我觉得人们可能觉得这个问题太具体了,所以我写了一个更简化的问题。
winapi - Win32:如何向 Windows 中不同用户运行的进程发布消息?
我们运行两个应用程序,每个应用程序都使用 RegisterWindowMessage() 注册相同的消息:应用程序 A 作为普通用户,应用程序 B 作为管理员在机器上的同一用户会话中,并且这些应用程序将这个消息发送给另一个。当 A 和 B 作为同一个用户运行时,一切都很好,我们能够使用 PostMessage() 消息进行通信。现在,由于应用程序 B 以管理员身份运行,消息不再通过。我们对于它可以做些什么呢?
这种情况是否要求我们使用其他机制(消息除外)?
events - powershell 多运行空间事件传递
我一直在寻找一种在不同运行空间之间传递事件的方法,但还没有找到。下面的片段创建了一个后台运行空间,它显示了一个只有一个按钮的小窗口。OnClick 它应该发布一个主运行空间应该接收的事件:
但这不起作用。我将最后几行更改为:
......这也没有奏效。我猜是因为我无法从 Child-RS 中的 parent-RS 调用函数。奇怪的是,在某些情况下,Get-Event 返回了一些“TestClicked”-Events,但我无法回忆或重现......
编辑:显然上面的工作方式 - 我又遇到了我的问题,它与一些功能结合使用。大多数人都知道 Scripting Guy 在 Powershell-BLog 上发布的 Show-Control 功能。由于我宁愿显示整个 GUI 而不是单个控件,因此我将其修改如下:
很抱歉用德语发表评论。
现在在函数调用中使用带有“GuI-events”的这个函数(它也使用发送“GUIloaded”和“WindowClosed”事件的技术),似乎不可能从gui-events中发送事件。像这样:
需要注意的是,$ui 是一个全局的 SyncHasTable。奇怪的是,那些“$ParentHost.UI.WriteLine()”调用在父控制台上工作并产生输出。“GenerateEvent”调用似乎根本不起作用。Get-Event 既不显示任何事件,也不会触发通过 Register-EngineEvent 设置的操作。
对此有什么想法吗?
python-2.7 - 连续向子进程发送数据
我正在测试与子进程的通信。我必须启动一个服务器,定期发送数据。最终目标是获取气象数据的进程和绘图服务器。采样率是数量级或分钟....我编写了这两个代码片段以了解python中ipc的基础知识,但我什至无法使它们工作。同步性不是问题。
主要流程
子流程:
主进程正在阻塞,显然子进程没有读取 - 发送 ACK。我哪里错了???谢谢
multithreading - MATLAB 上的进程间通信
我想创建一个 MATLAB 程序来模拟某些代理的行为。这些代理中的每一个都能够相互通信并决定下一个状态。我可以实现的程序是我熟悉的传统语言,如 java、python 或 C++,并使用线程来模拟每个代理。
现在我想尝试在 MATLAB 上实现以利用 MATLAB 绘图函数及其数学工具。是否有可能在 MATLAB 中创建这样的模拟,或者更好的是直截了当?我知道并行工具箱,但我不确定 MATLAB 是否适合此类应用程序。我也可以使模拟不并行,但这并不有趣。这是作业的一部分,我想知道在 MATLAB 上开始这样的模拟以更加熟悉它是否是个好主意。如果它不是直截了当的,我可以轻松切换到 python。
java - 从通过 Runtime...exec("..") 在 java 文件中加载的已启动 jar 文件的触发方法
这就是我想要做的:
我需要从一个 java 文件中启动两个 jar 文件,并且当我从第二个 jar 文件中读取特定状态时,我想从第一个启动的 jar 文件中调用一个方法。我想出了如何从那个 jar 文件中读取输出流。(我也知道,打印出来的不是jar文件,而是jar文件中的类。我只是用这种方式阐述了这个问题,以清楚地解释我使用一个java文件来启动两个jar文件)
我现在可以读取 jar 文件的输出。
在一个特殊的关键字上,我希望第一个启动的 jar 运行某个方法(非静态)。
例如:
我认为可以通过使用 theProcess1 输出来实现,但我不知道如何在 jar 文件中读取此流。(jar 文件不知道它是通过 java 文件启动的。
有任何想法吗?
c - 进程与管道之间的通信
我正在尝试实现一个程序,该程序在输入中采用一系列参数,并取决于它创建由管道实现的相同数量的进程,每个进程在管道中写入,然后将其传递给父亲。
这是我的代码,它不能满足我的需要。
谢谢你的帮助 。
输入:./pipes cmd1 cmd2 cmd3