如何在C#中在同一应用程序的两个实例之间共享数据

本文关键字:两个 实例 之间 数据 共享 应用程序 | 更新日期: 2023-09-27 17:50:55

可能重复:
在2个C#进程之间进行进程间通信的最简单方法是什么?

我需要在C#中开发一个windows应用程序,其中将运行该应用程序的两个实例。一个将投入运行,另一个将处于备用状态。若由于任何原因,第一个实例将挂起或停止工作,则第二个实例应启动操作。

如何在C#中在同一应用程序的两个实例之间共享数据

使用数据库。第一个实例将所有内容存储在数据库中(并在可能的情况下使用事务,以确保数据始终处于一致状态(。然后,第二个实例可以唤醒并从数据库中读取最新状态。

如何处理数据是一回事。

一种更常见的方法是使用看门狗进程。他不是同一过程的第二个实例。相反,他在第一个过程中会听到心跳或其他声音。如果他决定第一个进程已经死了,那么他可以杀死它/启动一个新的实例,等等。