QThread
のQtマニュアルによれば、quit()
関数は現在のタスクが終了するのを待ってから、イベントループを終了します。 quit()
とwait()
を適切に終了させた後、 は、QThreadの同じインスタンスをstart()
で再度開始することができます。 コードは正常に動作しているようですが、再起動後にスレッドIDが変更されます。 これはドキュメントには言及されていません。すべての例では新しいThreadインスタンスが作成されているようですが、quitを呼び出さないので疑問に思っていました。quitを合法的かつ賢明に呼び出した後、QThreadを再起動していますか?
2
A
答えて
2
はい、スレッドが正常に停止していれば、スレッドを再開することはできます。
そして、これがthe docは、スレッドID(強調鉱山)についてこう言われる、
Qtの:: HANDLE QThread :: currentThreadIdは()
は、現在実行中のスレッドのスレッドハンドルを返します。
警告:この関数によって返されるハンドルは、 目的のために使用されます。であり、アプリケーションコードに使用しないでください。
スレッドIDの変更には注意しないでください。
関連する問題
- 1. アンドロイドサービスを再起動した後、JNIクラッシュを呼び出すか?
- 2. キャンセル()を呼び出した後にタイマーを再起動します
- 3. GPSシステムが "removeUpdates"を呼び出した後に再起動しない
- 4. LogManager.shutdown()を呼び出した後、log4j2を再起動する方法は?
- 5. BroadcastReceiverは呼び出された後に自身を再起動します
- 6. RequiredFieldValidatorが起動した後にJavaScriptメソッドを呼び出しますか?
- 7. SessionNotFoundException:セッションIDがnullです。 quit()を呼び出した後でWebDriverを使用していますか? (Selenium)
- 8. Shutdown()を呼び出した後にlog4netメモリアペンダを再起動する
- 9. サービスからprepareAsync()を呼び出した後にMediaPlayerコールバックが起動しない
- 10. GUIでQThreadを再起動
- 11. Angularjs - 最初に呼び出した後に関数呼び出しを再帰呼び出しします。
- 12. ノードMysqlはquitを呼び出した後でクエリをエンキューできません
- 13. 明示的にSystem.gc()を呼び出しますか?
- 14. .disconnect()を呼び出した後に再接続する方法
- 15. 明示的にCRTの起動関数を呼び出す方法
- 16. AlarmManagerが起動した後にAlarmManagerメソッドを呼び出す方法は?
- 17. アプリケーションをコールドダウンした後、自動的に再起動できますか?
- 18. Javascriptで再帰的に "親"コンストラクタを呼び出しますか?
- 19. 再利用クラスの静的メソッドを呼び出した後
- 20. アンドロイドが再起動すると、サービスは再び呼び出されますか?
- 21. Wireless Toolkit 2.5.2でdestropApp()を呼び出した後、LWUITアプリケーションを再起動できませんか?
- 22. サブプロセス呼び出しでMongodbが再起動しない
- 23. 非同期API呼び出しを再帰的に呼び出します。
- 24. QThreadからウィジェットのメソッドを呼び出す方法
- 25. 別のコンテナから起動したJavaアプリケーションを呼び出す
- 26. quit()が呼び出された後にFirefoxDriverを使用できない
- 27. セレンのwebdriver:ruuning testng.xmlファイルエラーが発生していますセッションIDがnullです。 quit()を呼び出した後でWebDriverを使用していますか?
- 28. finish()を呼び出してアプリケーションを再起動した後のログの重複ログ
- 29. C# - イベントハンドラが再び呼び出されたときにタイマを再起動します。
- 30. OnPropertyChangedイベントをViewModelのプロパティのセッターで明示的に呼び出さなくても起動できますか?