История изменений
Исправление alysnix, (текущая версия) :
И да, счётчик ссылок на мьютекс это какая-то шиза.
не. там ситуация примерно такая, вдруг ниоткуда появляется некий обьект, к которому тредам надо обеспечить раздельный доступ.
тогда создают некий врапер обьекта, с мьютексом и счетчиком ссылок. те треды, кто обьект юзает, увеличивает счетчик ссылок, а поюзав - уменьшает.
в силу логики программы, попользовавшись, треды уже не будут к нему лезть, уменьшат счетчик ссылок, тогда другой тред, смотря на счетчик ссылок, убьет врапер вместе с мьютексом.
только в таком виде код нормальный.
то есть уменьшая счетчик, тред гарантирует, что больше не будет пытаться доступаться к этому обьекту
Исправление alysnix, :
И да, счётчик ссылок на мьютекс это какая-то шиза.
не. там ситуация примерно такая, вдруг ниоткуда появляется некий обьект, к которому тредам надо обеспечить раздельный доступ.
тогда создают некий врапер обьекта, с мьютексом и счетчиком ссылок. те треды, кто обьект юзает, увеличивает счетчик ссылок, а поюзав - уменьшает.
в силу логики программы, попользовавшись, треды уже не будут к нему лезть, уменьшат счетчик ссылок, тогда другой тред, смотря на счетчик ссылок, убьет врапер вместе с мьютексом.
только в таком виде код нормальный.
Исходная версия alysnix, :
И да, счётчик ссылок на мьютекс это какая-то шиза.
не. там ситуация примерно такая, вдруг неоткуда появляется некий обьект, к которому тредам надо обеспечить раздельный доступ.
тогда создают некий врапер обьекта, с мьютексом и счетчиком ссылок. те треды, кто обьект юзает, увеличивает счетчик ссылок, а поюзав - уменьшает.
в силу логики программы, попользовавшись, треды уже не будут к нему лезть, уменьшат счетчик ссылок, тогда другой тред, смотря на счетчик ссылок, убьет врапер вместе с мьютексом.
только в таком виде код нормальный.