Многопоточность, чтение переменной, несколько lock - C#

Узнай цену своей работы

Формулировка задачи:

Смотрите, есть переменная, ее изменение происходит с помощью lock
int count = 0;
// ...
lock (countLockObject) count++;
а если мне надо

прочитать

значение, причем не суть важно на сколько оно будет точным (плюс минус как говорится), можно это делать без lock? не произойдет ни какой ошибки? мне надо в лог выводить его, по этому и не важно на сколько оно точное. Еще такой вопрос, если мне надо заблокировать несколько объектов, как быть, такая запись не работает:
lock (objectA, objectB);
lock (objectA | objectB);
lock (objectA || objectB);
тут всего 2, но в реале их может быть 5 и более. Еще такой вопрос, если пищу (разные объекты):
lock (objectA)
{
    lock (objectB) count++;
}
это нормально?

Решение задачи: «Многопоточность, чтение переменной, несколько lock»

textual
Листинг программы
ref int count_controller

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 4.231 из 5