[问题] 请问多执行绪这样写是否有问题?

楼主: benbchung (距离...是妳经过我的时候)   2016-05-10 23:44:31
我使用VC C# 2010,Framework 3.5来编辑多执行绪程式。
我不晓得是否是我观念有问题,程式偶而会出错(执行绪的buffer偶发就null)。
想请教一下板上的前辈。
问题:
我建立了30个object,每个object里面开一个thread(也就是有30个thread)
并且依序start这30个thread(几乎同时开启)。
每个thread function里面我会再建立另一个区域的object
(假设物件名称为A,30个thread就有30个物件A)。
这30个物件A我是用来计算大buffer的影像处理,并且我确定各物件A的buffer没有共用。
但偶发就是会出现物件A的buffer在计算中突然变成null的情况
(但程式段落还没到清除此buffer的地方,还很正常在使用)。
是否是会因为太多执行绪创建同一个私有的class物件,导致资料互相影响?
作者: Caesar08 (Caesar)   2016-05-10 23:47:00
如果你用thread才有问题,那就是你code有写错然后根据我的经验,你如果不把code放上来,用说的根本没办法帮你debug
作者: TameFoxx (foxx)   2016-05-11 00:34:00
应该是你的物件A去跟大Buffer拿东西的时候不是复制一个副本看起来突然变null就是因为他在别的地方被Dispose?不过Dispose后好像不会显示null.... 有点不确定
作者: Litfal (Litfal)   2016-05-11 09:06:00
>>这30个物件A我是用来计算大buffer的影像处理大buffer > A 你是怎么做的?顺便提醒一下,你这样效率可能反而会差...
作者: johnpage (johnpage)   2016-05-11 11:54:00
工作内容没分配

Links booklink

Contact Us: admin [ a t ] ucptt.com