首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java进程间通信

Java进程间通信
EN

Stack Overflow用户
提问于 2009-09-13 03:34:43
回答 4查看 9.4K关注 0票数 4

我遇到需要向正在运行的java应用程序发送命令的情况,现在我正在使用tcp/ip套接字向使用internet explorer上下文菜单项的应用程序发送命令。但一旦应用程序启动,病毒扫描程序就会抱怨应用程序开始侦听,尽管我只侦听本地连接。我认为这可能会让用户感到困惑。我正在寻找其他不惹恼av扫描仪的沟通方式?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2009-09-13 03:51:08

要做到这一点,最好使用基于文件的FIFO队列。或者使用Java Native Access/Java Native Interface来写入NamedPipe或共享内存。如果采用JNA/JNI路线,则可以创建一个Named Event

但是,如果不采用JNA/JNI路线,可能无法以任何效率完成您想要的工作。

票数 4
EN

Stack Overflow用户

发布于 2009-09-13 04:36:14

您可以使用Java Management Extentions (JMX)通过简单的web界面公开正在运行的流程中的方法。

票数 3
EN

Stack Overflow用户

发布于 2009-09-13 03:54:24

套接字几乎是执行IPC的传统方法,但是如果您真的想要避免使用套接字,您也许能够想出一个使用本地文件系统的变通方法。您不希望使用标准的文件读/写,因为您很可能希望在文件系统中有效地实现一个队列。

如果我打算通过文件系统实现IPC,我可能会使用SQLite (which can be threadsafe when compiled so) ),并为每个侦听器提供一个表。我可能会使用单列表来插入消息,侦听器只会取出rowid最低的行,然后删除该行。

但我的方法完全不是特定于Java的,所以使用Java可能有更好的方法(例如@darthcoder的响应)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1416780

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档