从发送的参数锁定?

时间:2012-02-22 18:35:57

标签: c# multithreading parameters locking

我可以将ThreadCunner.RunThread作为参数发送时锁定MyClass吗?

MyClass{
    private static object locker = new object();
    public void RunThreads{
        for(int i=0;i<8;i++){
            ThreadRunner.RunThread(locker);
        }
    }
}

这是犹太人,还是我应该在MyClass中使用RunThread的逻辑,所以我不必传递更衣室对象?

1 个答案:

答案 0 :(得分:-1)

修改:我更正了const停止下来投票!

由于locker是静态的,因此最好将其声明为:

public static readonly object locker = new object();

因为锁对象无论如何都应该是常量,并在线程代码中使用它:

MyClass.locker

这样你就不需要传递它了。