だから私はいくつかのサンプルコードを以下に持っています。
workerThread = new QThread();
m_worker->moveToThread( workerThread );
connect( workerThread , SIGNAL( started() ), m_worker, SLOT( createObject() ) );
connect( m_worker, SIGNAL( created() ), this, SLOT( objectReceived() ) );
workerThread->start();
現在、QThread を new で初期化して使用しています。これが使用される唯一のコンテキストである場合、「QThread workerThread」を使用し、そのアドレスを参照して接続するだけで済みませんか? これにより、プログラムがスレッドをヒープに配置する必要がなくなります。new を使用せず、リストした方法を使用すると、「QThread: Destroyed while thread is still running」というエラーが表示されることに気付きました。私がリストした変更を除いて、コードに変更はありません。new を使用すると、このエラーは発生しません。大きな違いはありますか?