簡體   English   中英

Swift中的線程隊列

[英]Thread queue in Swift

當用戶點擊按鈕時,我執行15個具有某些功能的后台任務:

let priority = DISPATCH_QUEUE_PRIORITY_DEFAULT
dispatch_async(dispatch_get_global_queue(priority, 0)) {
    myfunc()
}

所以我在手機上測試了這個,當我點擊按鈕幾次時,我有很多線程和手機滯后一分鍾......

那么我需要創建帶有任務隊列的數組,例如將線程數限制為5或10,或者swift有這個標准工具嗎?

感謝您的評論,這是有效的:

let backgroundQueue = NSOperationQueue()
backgroundQueue.maxConcurrentOperationCount = 5
for i in 0...100 {
   backgroundQueue.addOperationWithBlock(){
       self.somefunc()
  }
}

暫無
暫無

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

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