当前位置:编程学习 > C#/ASP.NET >>

求助,c#多个线程访问一个对象

定义了一个ArrayList数组:
int InBuffer=0,OutBuffer=1;
ArrayList[] ArylstBuffer = new ArrayList[2];
ArylstBuffer[InBuffer] = new ArrayList();
ArylstBuffer[OutBuffer] = new ArrayList();
会有多个线程向ArylstBuffer[InBuffer]加数据,然后隔一定时间交换InBuffer和OutBuffer
并且删除ArylstBuffer[InBuffer]的所有数据,并且触发一个事件,
事件的处理函数用一个for循环逐条处理ArylstBuffer[OutBuffer]的数据

现在好像有个问题就是ArylstBuffer[OutBuffer]的数据还没处理完,时间已经到了,又交换
了InBuffer和OutBuffer,正在做for循环的ArrayList的数据就被删除了,继续循环会出错

大家帮忙看看,该怎么办啊?

--------------------编程问答-------------------- 同步啊,这种操作同一个对象,特别是修改操作,必须同步 --------------------编程问答--------------------
引用 1 楼 bdmh 的回复:
同步啊,这种操作同一个对象,特别是修改操作,必须同步


不知道同步该怎么写。。。%>_<% --------------------编程问答--------------------
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,