История изменений
Исправление iron, (текущая версия) :
Погодите, но ведь проблема в одном и том же мутексе у обоих енкодеров!?
Верно. Но тебе обеим потокам главное выйти из режима ожидания. А кто из энкодеров захватить мютекс – пофигу. Когда они закончат работу, у выставят переменные encode0_done
и encode1_done
в 1
и просигналят декодеру.
Это все лишь в теории. Проверь, прокатит ли такой трюк на практике. Мне самому лень проверять, тоже сейчас сам вожусь с подобными ребусами блокировок.
Исходная версия iron, :
Погодите, но ведь проблема в одном и том же мутексе у обоих енкодеров!?
Верно. Но тебе обеим потокам главное выйти из режима ожидания. А кто из энкодеров захватить мютекс – пофигу. Когда они закончат работу, у выставят переменные encode0_done
и encode1_done
в 1
и просигналят декодеру.
Это все лишь в теории. Проверь, прокатит ли такой трюк на практике. Мне самому лень проверять, тоже сейчас вожусь с подобными ребусами блокировок.