C#中的多线程数据结构类型使用心得 - chunlieater/chunlifeet GitHub Wiki

  • Concurrent系列的字典,堆栈,链表,是可以支持在多线程中安全访问的。
  • 只要是可以被多个线程访问的公共变量,就要注意其多线程的问题,比如两个线程都要判断一个集合中是否有值,并且要弹出该值进行使用,那么就要使用trypop这样的函数返回值做判断条件,以防一个线程弹出值后,其余的线程取到空值。
  • 局部变量或者只有一个线程内访问的变量,则不需要考虑线程安全。