История изменений
Исправление no-such-file, (текущая версия) :
Опять проблема. Как только мы отпустим mutex, метод release(ID) почистит объект который мы только что положили
Тебе нужно обеспечить, чтобы make/release работали бы только из одного треда. Для этого нужен вспомогательный класс, через объект которого будут вызываться make/release. На время существования такого объекта доступ к make/release лочится.
Что-то вроде этого
{
MakeReleaseLock mr(repo.getMakeReleaseLock()); // получили интерфейс make/release и залочили его
A a=mr.make(123);
// release не может быть вызван из другого треда
} // Освобождается лок, теперь другой тред может разлочится и получить интерфейс make/release
Исходная версия no-such-file, :
Опять проблема. Как только мы отпустим mutex, метод release(ID) почистит объект который мы только что положили
Тебе нужно обеспечить, чтобы make/release работали бы только из одного треда. Для этого нужен вспомогательный класс, через объект которого будут вызываться make/release. На время существования такого объекта доступ к make/release лочится.
Что-то вроде этого
{
MakeReleaseLock mr(repo.getMakeReleaseLock()); // получили интерфейс make/release и залочили его
A a=mr.make(123);
// release не может быть вызван из другого треда
} // Освобождается лок, теперь другой тред может разлочится и получить интерфейс make/release