我有一个TObjectList需要由几个线程处理。由于内部TObjectList继承自TList,并且TList将其内部实现为一个数组,我不知道:正在访问TObjectList线程安全的不同索引吗?
只要我们访问不同的索引,它是否可以安全地从不同线程访问数组?
例如,具有TObjectList称为myObjectList:
开始= 0; end = myObjectList.Count div 2;
线程1:
for i := 0 to end do
Process(myObjectList[i]);
线程2:
for i := end + 1 to myObjectList.Count - 1 do
Process(myObjectList[i]);
我真的不需要修改列表,只是阅读它,所以我想避免锁定的负担。我只是想确认一下,只要你阅读清单就没有问题。 – 2009-05-28 08:47:02