Re[3]: gcc 4.4 и pthreads
От: zaufi Земля  
Дата: 29.04.10 10:47
Оценка: +1
Здравствуйте, o.palij, Вы писали:

OP>Здравствуйте, zaufi, Вы писали:


Z>>не ужели не понятно как? -- у тебя deadlock очевидно же...

Z>>ревьюить весь код работающий с данным mutexом (из того что ты привел есь только одна функция, и по ней одной только телепаты тебе смогут сказать что происходит... а они как обычно все в отпуске )
OP>Имеется в виду, что этот мьютекс может захватыватся в другом месте кроме как в tick()?
OP>
OP>$ grep tick_mutex *
OP>ncui.cpp:   pthread_mutex_lock(&tick_mutex);
OP>ncui.cpp:   pthread_mutex_unlock(&tick_mutex);
OP>ncui.hpp:      pthread_mutex_t tick_mutex;
OP>

OP>т.е. он захватывается только в ncui::tick(). этот tick() вызывается только внутри loop() и внутри ncui::loop(). Внутри ncui::loop() tick() вызывается только если нажата клавиша, чего явно не происходит.

ок, а где этот mutex инициализируется????
гдета должен быть вызов pthread_mutex_init (из результата грепа видно что статической инициализации нет) -- где же тогда рантаймная инициализация??
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.