ConcurrentDictionary是如何访问的以及如何序列化它?

发布于 2024-12-05 13:51:44 字数 172 浏览 0 评论 0 原文

我以前从未使用过 ConcurrentDictionary 对象,并且对此有几个问题:

  1. 我是否正确地认为多个线程可以同时从字典中读取,但如果正在写入该对象,则没有其他线程可以访问它?

  2. 这个对象可以序列化到磁盘吗?

谢谢。

I've never used the ConcurrentDictionary object before and have a couple questions about it:

  1. Am I correct that multiple threads can read from the dictionary at the same time, but if it's being written to, no other thread can access it?

  2. Can this object be serialized to disk?

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

陌上青苔 2024-12-12 13:51:44

我是否正确,多个线程可以同时从字典中读取,但如果正在写入字典,则没有其他线程可以访问它?

不,您可以安全地从多个线程读取和写入。当然,在内部,我认为发生了一些同步,但性能损失应该很小,您不应该担心它并进行任何额外的同步。

这个对象可以序列化到磁盘吗?

取决于您使用什么序列化器。

Am I correct that multiple threads can read from the dictionary at the same time, but if it's being written to, no other thread can access it?

No, you can safely read and write from multiple threads. Of course internally I suppose that there is some synchronization happening but the performance penalty should be small and you shouldn't be worried about it and do any additional synchronization.

Can this object be serialized to disk?

Depends on what serializer you use.

时光与爱终年不遇 2024-12-12 13:51:44
  1. 我是否正确,多个线程可以同时从字典中读取,但如果正在写入字典,则没有其他线程可以访问它?

这是不可观察的,您可以从多个线程读取写入,并让类担心同步。

  • 这个对象可以序列化到磁盘吗?
  • 是的,它标有[Serialized]。您始终可以提取 对并使用您喜欢的任何序列化器。

    1. Am I correct that multiple threads can read from the dictionary at the same time, but if it's being written to, no other thread can access it?

    This is not observable, you can read and write from multiple threads and let the class worry about the synchronization.

    1. Can this object be serialized to disk?

    Yes, it is marked with [Serializable]. And you can always extract the <K,V> pairs and use any Serializer you like.

    ~没有更多了~
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文