Блокировка в свойствах, хороший подход?
В моем многопоточном приложении я использую некоторые переменные, которые могут быть изменены многими экземплярами одновременно. Это странно, но без проблем работает нормально ... но, конечно, мне нужно сделать его поточно-ориентированным. Я только начинаю с замков, поэтому я бы оценил ваш совет:
Когда клиент подключается, создается класс 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
}
}
Будет ли это хорошо?