簡體   English   中英

GCD,NSOperationQueue,還是手動創建一個線程?

[英]GCD, NSOperationQueue, or create a thread manually?

當你使用線程時,你有任何偏好嗎? 一般來說,要使用以下任何一種技術:

  • 手動創建一個新線程並使用運行循環
  • 使用NSOperationQueue
  • 或使用Grand Central Dispatch和帶有dispatch_queue的C版本?

NSOperationQueue是否簡化了所有內容,因此在我們需要創建異步函數時更好用?

我很懶,所以我的理念是選擇最簡單的解決方案來完成我需要的一切。 (我喜歡認為這是Larry Wall所支持的“懶惰”,但有時候我會這么想。)

所以我的偏好順序是:

  1. 異步方法調用
  2. NSOperationQueue
  3. Grand Central Dispatch

每一步都會增加復雜性和靈活性。 如果您需要額外的靈活性,那么復雜性可能是值得的。

我記得在WWDC 2010會話中,有人說GCD是要走的路,除非你正在處理目前使用不當的API。

作為一般規則,我總是使用異步方法調用進行聯網,並避免直接使用pthreads或NSThreads,除非絕對必要。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM