gpt4 book ai didi

multithreading - 如何在 Delphi 中实现线程安全列表包装器?

转载 作者:行者123 更新时间:2023-12-03 14:56:04 26 4
gpt4 key购买 nike

我有一个列表包装器,它维护两个 Tstringlists 和一个 TClassList

我需要它是线程安全的,这样:

  • 不允许并发写入(应进入某种等待状态)
  • 不允许边写边读(反之亦然)(应进入某种等待状态)
  • 允许并发读取

关于如何做到这一点有什么想法吗?我的直觉告诉我,它需要的不仅仅是一个关键部分,也许是一个信号量或“使用计数器”,也许其中之一与 CS 结合使用。

我只是不太确定从哪里开始 - 从英语的整体方法到伪代码,再到 delphi 实现或外部链接,我们将不胜感激。

最佳答案

您应该查看 sysutils.pas 中声明的 TMultiReadExclusiveWriteSynchronizer 类...

关于multithreading - 如何在 Delphi 中实现线程安全列表包装器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/302583/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com