0

我必须在 C# 中实现一个包含任务列表的 dll。这个 dll 的职责是管理这些任务。不同的进程将与这个 dll 交互,每个进程都有自己的任务,由任务 ID 标识。

但由于每个进程都有自己的 dll 数据副本,因此挑战在于如何管理此列表。此列表必须由所有实例共享。我在谷歌上搜索共享 dll 数据并遇到了这个-

data_seg 方法似乎只对静态数据有用,没有在列表中动态添加/删除任务的范围。(如果我错了,请纠正我)。

我应该去内存映射文件吗?如果我只使用基本文件 I/O 怎么办?我正在考虑将这个任务列表序列化到一个文件中。然后每个进程都可以使用 FileShare.None 设置打开它。这样文件访问将是互斥的,如果文件已经打开,进程将等待。

请让我知道哪个是更好的方法或任何其他更好的选择。

谢谢

4

1 回答 1

1

您是否考虑过将 dll 托管在 WCF 服务中?然后,您可以让您的应用程序对该服务进行客户端调用。数据可能会保留在托管 wcf 进程中。

于 2009-10-06T21:39:15.273 回答