可能重复:
What is the simplest method of inter-process communication between 2 C# processes?
我需要在C#中开发一个Windows应用程序,其中将运行两个应用程序实例。一个将运行,另一个将处于待命状态。如果由于任何原因,第一个实例将挂起或停止工作,则第二个实例应该开始运行。
答案 0 :(得分:2)
使用数据库。第一个实例将所有内容存储在数据库中(如果可能,使用事务,以确保数据始终处于一致状态)。然后,第二个实例可以从数据库中唤醒并读取最新状态。
答案 1 :(得分:1)
但是你处理数据是一回事。
执行您正在尝试的更常见的方法是使用监视程序进程。他不是同一进程的第二个实例。相反,他会在第一个过程中听取心跳或其他内容。如果他确定第一个进程已经死了,那么他可以杀死它/启动一个新实例等等。