首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

Delphi 关于TCriticalSection类,求证这句话是否正确?解决方法

2012-03-08 
Delphi 关于TCriticalSection类,求证这句话是否正确?criticalsection机制不是那么“智能”的,他不管你在ente

Delphi 关于TCriticalSection类,求证这句话是否正确?
criticalsection机制不是那么“智能”的,他不管你在enter和leave之间访问了谁。哪怕你没有访问任何共享数据。只要有其他线程遵循enter和leave的机制,在同一个时刻如果有一个这样得线程在运行的话,其他的都被阻塞。 
所以,enter和leave之间的代码无论是什么都只是他自己在执行,(只要它获得了进入criticalsection的权利)。 
无论是对简单变量还是vcl对象的访问,都可以保证同步。 
前提是所有的访问代码段都被cs.enter,cs.leave "包围 ". 


[解决办法]
是的,就是这样
[解决办法]

探讨
criticalsection机制不是那么“智能”的,他不管你在enter和leave之间访问了谁。哪怕你没有访问任何共享数据。只要有其他线程遵循enter和leave的机制,在同一个时刻如果有一个这样得线程在运行的话,其他的都被阻塞。
所以,enter和leave之间的代码无论是什么都只是他自己在执行,(只要它获得了进入criticalsection的权利)。
无论是对简单变量还是vcl……

热点排行