Russian Qt Forum

Qt => Многопоточное программирование, процессы => Тема начата: Yegor от Март 24, 2018, 17:28



Название: [РЕШЕНО] Проблема завершение потоков
Отправлено: Yegor от Март 24, 2018, 17:28
Всем здравствуйте.

Работаю в qt 5.7.1. OS - linux ubuntu.

Для создания параллельных потоков использую класс QThread, переопределяю в нем метод run.

Все работает нормально, потоки создаются, завершаются.
Но вот только при выходе из приложения в консоль отладки выводится сообщение:

Error in my_thread_global_end(): 11 threads didn't exit

Подскажите, что с этим делать? Анализатор памяти (valgrind) говорит что все нормально.


Название: Re: Проблема завершение потоков
Отправлено: Yegor от Март 24, 2018, 20:05
Решил. Проблема была в том, что я подсоединялся/отсоединялся к СУБД MySQL в основном потоке, а использовал это соединение в параллельном. А нужно создавать и использовать соединение к БД в одном лишь потоке. Такое требование у классов QtSql. Это требование выполнил, и все сообщения Error in my_thread_global_end() исчезли.