в конструкторе mainwindow
QThread *thread_NEW = new QThread;
m_ComPort->moveToThread(thread_NEW); // помещаем класс в поток
m_ComPort->getSerialPort()->moveToThread(thread_NEW); //помещаем порт в поток.
thread_NEW->start();
в созданном потоке считываются данные с ком порта и заполняются поля структуры.
В основном потоке гуя с помощью указателя на стуктуру которую заполняет второй поток.
С помощью Qtimer c частотой 10мс я обновляю виджеты.
id_потока_1 - это поток гуя, который обновляет виджеты.
id_потока_2 - это поток для работы с ком портом, вывожу в дебагер каждый раз когда я делаю readALL();
При захвате окна мышкой(проблема из первого поста, которую я пытаюсь подебить) я вижу, что второй поток прекращает выполняться,
в дебагере выполняется только первый поток. пик(2).
После чего при n-ом(пытался найти закономерность не нашел)
повторном захвате окна мышкой, я вижу, что выполняется второй поток,
а первый не выполняется(предполагаю, что дочитывает буфер). пик(3)
после чего потоки начинает выполнятся как мне нужно - могу без проблем перетаскивать окно,
все виджеты обновляются и буфер не переполняется. пик(4);
Прошу помощи, что-то я совсем потерялся.