在C#开发中,我们有时候会用到多线程。在某些时候,我们会有个全局的int变量用来计数,然后每个线程都能去修改它。通常我们的做法是使用lock来锁定,或者直接将int变量添加volatile关键字来修饰,但是实际上这两种都不是最好的方法。
1、使用lock关键字
public int counter = 0;
object locker = new object();
lock(locker)
{
counter ++;
}
2、使用volatile关键字
public volatile int counter = 0;
ok
mjj通道