при многопоточном вызове оператора « и деструктора?
class SafeJavaVM {
JavaVM *vm;
std::mutex m;
public:
explicit SafeJavaVM(JavaVM *vm) : vm(vm) {}
template<class F>
auto operator<<(F &&f) {
std::lock_guard lg(m);
return f(vm);
}
~SafeJavaVM() { *this << [](...) {}; }
};
Чего избежать ?
race condition
на vm это как ?
Из голого указателя делаю вывод, что класс не владеет JavaVM. Следовательно и гарантий нет.
а что за бред происходит в деструкторе?
Вот это вот переведи пожалуйста `избежать рейса на vm при многопоточном вызове`
Он кажись в нем просто хочет последний вызов делать
По русски: он хочет избежать гонки данных при обращении к указателю vm.
это вы так откладываете уничтожение объекта пока его кто-то держит? 😁
ну это как связано ?
Не знаю, это к автору. :)
Обсуждают сегодня