3
我在我的應用程序中創建了多個併發隊列。 dispatch_barrier_sync
用於修改共享資源。GCD中的調度屏障隊列(iOS)
將dispatch_barrier_sync
只在當前隊列或所有隊列中阻止並行執行嗎?
例如,假設我有3個自定義併發隊列「A」,「B」和「C」。如果我將一個dispatch_barrier_sync
塊提交給「A」隊列,它會阻止「B」和「C」的並行執行嗎?或只在「A」?
我在我的應用程序中創建了多個併發隊列。 dispatch_barrier_sync
用於修改共享資源。GCD中的調度屏障隊列(iOS)
將dispatch_barrier_sync
只在當前隊列或所有隊列中阻止並行執行嗎?
例如,假設我有3個自定義併發隊列「A」,「B」和「C」。如果我將一個dispatch_barrier_sync
塊提交給「A」隊列,它會阻止「B」和「C」的並行執行嗎?或只在「A」?
只有A.它確實不會阻塞任何東西。它會等到A中的所有任務完成。 B和C將照常工作,並可以呼叫他們的街區。
那你從你寫來調查這個測試代碼學到了什麼? –
@JoshCaswell我還沒有完全編碼..我想知道在這種情況下會發生什麼。所以我可以重寫它,因爲錯誤 – Karthik207
我沒有問你的完整代碼的樣子,我問什麼時候發生了什麼你寫了一些快速_tests_。 –