Столкнулся тут с такой ситуацией. Правил, правда, чужой код, но суть следующая. В проге есть функция (чего делает точно не знаю, память гоняет туда-сюда), которая вешает ГПИ минут на 15. Организую для нее поток, прога выполняется корректно, но ГПИ все равно виснет на те же 15 минут. Проверяю, стартует ли нить с помощью top`а и ps`а. Нитка выполняется и завершается корректно, но ГПИ при этом или висит, или в глубоком тормозе. В топе отжирает 97-99 процентов CPU. В ps`е статус нитки R+, а вот у ГПИ-шного процесса S+. Чего-то никогда такого не наблюдал. Даже если нить забирала много ресурсов, ГПИ был доступен, а тут реально висяк, элементы UI даже не перерисовываются. На нить же не повесить приоритеты? Есть у кого какие мысли? Linux(MCBC), Qt3 (потоки тоже qt). lock()`и отсутствуют. Аппаратная платформа SPARC аж на 4-х процах, Эльбрус родной т.е.
|