将信号从.NET应用程序传递到Java应用程序

时间:2012-12-23 10:22:09

标签: java windows ipc

我需要将来自.NET应用程序的信号传递给Java应用程序。不需要数据,信号本身就足够了。

我想到的最简单的方法是使用这样的命名同步对象:

  1. .NET应用程序创建一个命名的同步对象A.
  2. Java应用程序创建某个命名的同步对象A - 名称与(1)中的名称相同。
  3. Java应用程序有一个线程在等待对象发出信号。
  4. .NET应用程序发出信号。
  5. Java应用程序线程唤醒并对信号接收起作用。
  6. 至少,如果我知道如何在Java中创建命名同步对象,我会这样做。

    但看起来Java没有,我觉得很难相信。这是否意味着只有Windows命名了同步对象?

    所以,我的问题是这样 - 我如何将非Java应用程序中的简单信号(无数据)传递给Windows上的Java应用程序?这两个进程都在同一主机上运行。

    修改

    动机 - 我想向无头的Java进程发出信号,要求它尽快优雅地终止。

3 个答案:

答案 0 :(得分:3)

您可以在程序之间创建套接字连接,并通过发送和接收特定模式来检测信号

答案 1 :(得分:0)

我第二个想到,我以前使用ICE Framework做过,你可以从这里下载和学习ICE框架, ICE Framework是用于本地系统或网络上的进程之间通信的交叉框架。

Download Ice Framework

答案 2 :(得分:0)

出于上帝的考虑,我只想要从C ++ / C#进程到Java进程的单个1位信号,并且没有简单的方法可以做到这一点。我无法相信。

忘了它,我只会使用文件系统。 C ++ / C#代码将在一个众所周知的位置创建一个空文件,Java代码将每秒轮询一次。

Finito,故事结束。