您可以詢問連接/執行之外的線程上的QSqlQuery(例如query.value)嗎?在另一個線程上詢問QSqlQuery
回答
按照Qt docs,這是不支持:
的連接只能從創建它的線程中使用。 不支持在線程之間移動連接或從 不同線程創建查詢。
此外,由QSqlDrivers使用的第三方庫可以在多線程程序中使用SQL模塊時會產生進一步的限制 。至少,請諮詢您的數據庫客戶端的手冊,瞭解更多信息
,您必須add a new database connection(一個獨特的名字),爲您想運行一個查詢每個線程。
我指的是在執行後使用QSqlQuery。它緩存整個結果嗎?如果我只是通過記錄並閱讀所有值,它是否使用連接? –
@PascalauRazvan。那麼你問是否可以在線程之間傳遞一個活動的'QSqlQuery'對象?你想通過這樣做解決什麼問題?你是否希望以某種方式避免將所有結果發送回主線程? – ekhumoro
@ ekhumoro我不想在創建數據庫連接的同一線程上解析結果(我已將序列化的訪問發生在一個線程上,而不是具有多個連接)。是的,我想知道是否可以在調用者線程上使用該活動的QSqlQuery。 –
- 1. 多線程QSqlQuery
- 2. PlaySound在另一個線程
- 3. 在另一個線程
- 4. 從另一個線程訪問BindingSource
- 5. 從另一個線程訪問值
- 6. 從另一個線程訪問ListBox.SelectedItems
- 7. 訪問控制從另一個線程
- 8. 訪問Control.Focused從另一個線程
- 9. NSManagedObjectControllers只讀訪問另一個線程
- 10. 在另一個線程上創建一個WPF進度窗口
- 11. 一個線程如何在另一個線程中被殺死
- 12. 無法訪問Android上的另一個線程資源(崩潰)
- 13. 訪問與QTcpSocket從另一個線程(子線程)
- 14. 從另一個線程操作線程
- 15. 從另一個線程運行線程
- 16. Python:在一個線程中停止另一個線程從另一個線程結束
- 17. 異常在另一個線程處理創建另一個線程
- 18. UI線程如何知道另一個線程上的數據?
- 19. 另一個查詢問題
- 20. 多線程Java服務器:允許一個線程訪問另一個
- 21. 在線程和另一個輪詢線程之間共享隊列
- 22. 如何在另一個線程上繪製到QLabel上
- 23. Android另一個線程
- 24. 處置另一個線程
- 25. 從另一個線程DoDragDrop()
- 26. C對另一個線程
- 27. HttpWebRequests從另一個線程
- 28. 從另一個線程
- 29. 從另一個線程
- 30. 使用另一個線程
你試過了嗎?嘗試一下並告訴我們您的體驗。 – eyllanesc
我還沒有嘗試過,但我想。代碼是多線程的,它可能需要一些時間,直到它隨機崩潰,我更加好奇,如果QSqlQuery體系結構支持它 –