我有一个列表包装器,它维护两个Tstringlists和一个TClassList
我需要这个是线程安全的,这样:
不允许并发写入(应输入某种等待状态)
不允许在写入时读取(反之亦然)(应输入某种等待状态)
并发读取被允许
有关如何做到这一点的任何想法?我的直觉告诉我它需要的不仅仅是一个关键部分,可能是一个信号量或"使用计数器",也许其中一个与CS 结合使用.
我只是不太确定从哪里开始 - 从英语到伪代码的整体方法,到delphi实现或外部链接的任何事情都将非常感激.
您应该看一下sysutils.pas中声明的TMultiReadExclusiveWriteSynchronizer类...
看看这个教程. 穿越德尔福之路
看看第11章,但这都是好事.