Singleton 当用户在应用程序中重新生成数据结构时,如何拥有多个单例实例?

Singleton 当用户在应用程序中重新生成数据结构时,如何拥有多个单例实例?,singleton,backgroundworker,Singleton,Backgroundworker,我有一个使用后台工作(bw)和任务的应用程序 我在这个应用程序中有一个singleton实例。它包含关于该应用程序实例的大多数常见信息。我的应用程序中列出了不同的代理。如果我切换到不同的代理,我必须构建整个数据结构(模型/视图模型/DTO) 比方说,对于代理“a”,生成了一个bw…它使用上面提到的单例实例 很快我切换到代理“b”…所以在我的应用程序中,我为aganet“b”创建了新的数据结构。但是使用相同的单例实例 如果我更改这个单例实例中的任何属性……那么代理“a”的bw可能会使用新值 有人能

我有一个使用后台工作(bw)和任务的应用程序

我在这个应用程序中有一个singleton实例。它包含关于该应用程序实例的大多数常见信息。我的应用程序中列出了不同的代理。如果我切换到不同的代理,我必须构建整个数据结构(模型/视图模型/DTO)

比方说,对于代理“a”,生成了一个bw…它使用上面提到的单例实例

很快我切换到代理“b”…所以在我的应用程序中,我为aganet“b”创建了新的数据结构。但是使用相同的单例实例

如果我更改这个单例实例中的任何属性……那么代理“a”的bw可能会使用新值

有人能帮我克服这种情况吗

我可以为不同的代理提供不同的单例实例吗

任何帮助都将不胜感激。谢谢


编辑:如果你能告诉我任何不同的方法都很好。

根据定义,单身者只能存在一次。如果您希望为每个用户提供不同的设置,则需要使用不同的体系结构。有关Singleton的更多信息,请参阅。

实际上,当我切换代理时,它几乎就像不同的应用程序。是的,我正在寻找不同的方法,这就是为什么我在这里发布这个问题。也许可以让它们成为你在会话中存储的对象。需要更多详细信息。这是桌面应用程序,不是web应用程序。