Тут возникла такая проблема (С++, gcc, linux) с многопоточность.
Есть несколько потоков которые работают с общим списком структур, в
каждый из потоков передаётся указатель на этот список.
Для блокировки использую переменную типа int, что то вроде int lock. И
при попытке обратиться к списку я проверяю состояние этой переменной
примерно так
while(1) if(base_object->lock == 0) break;
где base_object указатель на объект класса в котором и создаются потоки.
Вопрос такой, такое использование аналогично использованию mutex'ов или
они (mutex) буду по другому себя вести. Проблемма собственно в том что
в моём варианте, _КАК_МНЕ_КАЖЕТСЯ_, потоки успевают одновременно писать
в список...на знаю правда, как они умудряются проскочить проверку флага
lock.
Заранее спасибо!