List<T> 怎么锁呀,多个地方更改过集合。

解决方案 »

  1.   

    定义全局变量的时候使用volatile,系统会自动维护它的多线程访问。
      

  2.   

    没明白。。volatile是什么东西
      

  3.   

    http://msdn.microsoft.com/ZH-CN/library/vstudio/x13ttww7(v=vs.110).aspx这个关键字可以呈现被修饰变量的最新值,也就是确保变量每次改变都是一个线程在操作,不会被2个以上的线程同时操作。如果读取集合信息和更改集合信息之间穿插其它操作,那么也可能会被其它线程提前修改。它确保的是读取的一定是最新的,而不是修改途中的信息。