История изменений
Исправление AndreyKl, (текущая версия) :
Ну, гляди:
Я тебе показал существование по крайней мере одной проблемы, которую _не_ решает мьютекс в конструкторе.
Мьютекс вне конструктора делает код «однопоточным» и решает все проблемы.
Вывод: мьютекс внутри контсруктора - бессмысленен, потому как существует по крайней мере одна проблема которую он не решает и которая ведёт к НП.
------
Вообще я совершенно не понял что ты сделал с кодом: задача была - показать существование проблемы и возможность/невозможность её решения с помощью мьютекса. Что мой код и делал. Ты его «исправил» обойдя проблему. Смысл? Это как раз то чего делать не надо было, поскольку это противоположно поставленной задаче. Возникает ощущение, что ты не понимаешь контекста дискуссии. (Способ «обхода» - "-O0" - вообще вне критики, ну да бог с ним).
Исправление AndreyKl, :
Ну, гляди:
Я тебе показал существование по крайней мере одной проблемы, которую _не_ решает мьютекс в конструкторе.
Мьютекс вне конструктора делает код «однопоточным» и решает все проблемы.
Вывод: мьютекс внутри контсруктора - бессмысленен, потому как существует по крайней мере одна проблема которую он не решает и которая ведёт к НП.
------
Вообще я совершенно не понял что ты сделал с кодом: задача была - показать существование проблемы и возможность/невозможность её решения с помощью мьютекса. Что мой код и делал. Ты его «исправил» обойдя проблему. Смысл? Это как раз то чего делать не надо было, поскольку это противоположно поставленной задаче. Ощущение что ты не понимаешь контекста дискуссии. (Способ «обхода» - "-O0" - вообще вне критики, ну да бог с ним).
Исходная версия AndreyKl, :
Ну, гляди:
Я тебе показал существование по крайней мере одной проблемы, которую не решает мьютекс в конструкторе.
Мьютекс вне конструктора делает код «однопоточным» и решает все проблемы.
Вывод: мьютекс внутри контсруктора - бессмысленен, потому как существует по крайней мере одна проблема которую он не решает и которая ведёт к НП.
------
Вообще я совершенно не понял что ты сделал с кодом: задача была - показать существование проблемы и возможность/невозможность её решения с помощью мьютекса. Что мой код и делал. Ты его «исправил» обойдя проблему. Смысл? Это как раз то чего делать не надо было, поскольку это противоположно поставленной задаче. Ощущение что ты не понимаешь контекста дискуссии. (Способ «обхода» - "-O0" - вообще вне критики, ну да бог с ним).