次のシナリオでは、競合状態を回避しようとしています。
QDialog* dialog = [...];
QThread* thread = [...];
connect(thread, SIGNAL(finished()), dialog, SLOT(accept()));
thread->start();
dialog->exec();
QDialog :: exec()がダイアログを設定する前にスレッドが終了すると、シグナルによってトリガーされた「accept()」呼び出しは失われ、ダイアログは自動的に閉じません...
したがって、理想的には、ダイアログがスレッドを処理する準備ができた後でのみスレッドを開始したいのですが、これをどのように行うのでしょうか?