Установите блокировку чтения-записи для каждого доступа к переменной-члену в классе C ++ для достижения синхронизации - PullRequest
0 голосов
/ 15 апреля 2020

У меня огромный класс X с ~ 40 сложными членами и многими вызовами функций чтения / записи (которые могут вызывать друг друга), которые я хочу сделать его поточно-ориентированным. Одним из простых подходов было бы добавить блокировку объекта в реализацию везде, где кто-то пытается прочитать / записать указанный c член. Но это привело бы к добавлению / изменению большого количества кода везде, где к любому члену обращаются. Помимо рефакторинга такого большого количества кода, для обычного читателя было бы сложно понять простую функцию. Кроме того, любой, кто обновляет класс в будущем, должен быть очень осторожен, чтобы не создавать возможности взаимоблокировки.

Есть ли какой-нибудь простой способ добиться этой синхронизации чтения-записи?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...