訊號槽同步
阿新 • • 發佈:2018-12-12
connect函式的最後一個引數type可以指定傳遞訊號的方式,它是Qt::ConnectionType列舉型別常量,常用連線型別如下表所列。
Constant | Value | Description |
Qt::AutoConnection | 0 | 當訊號傳送者和接收者處於同一執行緒內時,這個型別等同於DirectConnection,反之等同於QueuedConnection,這個型別也是connect函式的預設連線型別 |
Qt::DirectConnection | 1 | 訊號一旦發射,與之關聯的槽函式立即執行 |
Qt::QueuedConnection | 2 | 當訊號產生,訊號會暫時被緩衝到一個訊息佇列中,等待接收者的事件迴圈處理去佇列中獲取訊息,然後執行和訊號關聯的槽函式,這種方式既可以在同一執行緒內傳遞訊息也可以跨執行緒操作 |
Qt::BlockingQueuedConnection | 4 | 這種型別類似於QueuedConnection,但是它只能應用於跨執行緒操作即傳送者和接收者處於不同的執行緒中的情況,並且訊號傳送者執行緒會阻塞等待接收者的槽函式執行結束 |
Qt::AutoCompatConnection | 3 | 當相容Qt3程式是的預設連線型別 |