Блокировка от отправленного параметра? - PullRequest
0 голосов
/ 22 февраля 2012

Могу ли я заблокировать MyClass из ThreadRunner.RunThread при отправке в качестве аргумента?

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

Является ли это кошерным или я должен иметь логику RunThread в MyClass, чтобы мне не приходилось передаватьобъект шкафчика?

1 Ответ

0 голосов
/ 22 февраля 2012

Редактировать : я исправил const, остановите понижающие голоса, пожалуйста!

Поскольку locker является статическим, лучше просто объявить его как:

public static readonly object locker = new object();

поскольку блокирующие объекты в любом случае должны быть постоянными, и используйте его внутри кода потока следующим образом:

MyClass.locker

таким образом, вам не нужно передавать его.

...