Блокировка в свойствах, хороший подход?

В моем многопоточном приложении я использую некоторые переменные, которые могут быть изменены многими экземплярами одновременно. Это странно, но без проблем работает нормально ... но, конечно, мне нужно сделать его поточно-ориентированным. Я только начинаю с замков, поэтому я бы оценил ваш совет:

Когда клиент подключается, создается класс Client, где каждый клиент имеет свою собственную букву "A" переменная.

Иногда клиент вызывает такой метод:

Client selectedClient SelectOtherClientClassByID(sentID);

selectedClient.A=5;

До сих пор никаких проблем с этим не возникало, даже когда одновременно выполнялось 5 классов (threadpool), но я думал о добавлении блокировок в свойства A?

Подобно:

A {
    get { return mA; }
    set {
        // use lock here for settting A to some value
    }    
}

Будет ли это хорошо?

Ответы на вопрос(3)

Ваш ответ на вопрос