Guest User

Untitled

a guest
Feb 20th, 2018
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.92 KB | None | 0 0
  1. import UIKit
  2.  
  3. class ViewController: UIViewController {
  4.  
  5. override func viewDidLoad() {
  6. super.viewDidLoad()
  7.  
  8. let downloadA = createOperation("thread1", "url1")
  9. let downloadB = createOperation("thread2", "url2")
  10.  
  11. let queue = OperationQueue.init()
  12. queue.maxConcurrentOperationCount = 1
  13. queue.addOperation(downloadA)
  14. queue.addOperation(downloadB)
  15.  
  16. }
  17.  
  18. func createOperation(_ name: String, _ url: String) -> BlockOperation {
  19. let download = BlockOperation.init {
  20. //下载图片
  21. print("\(name) start download \(url)")
  22.  
  23. // 下载完成后,回主线程显示图片
  24. self.perform(#selector(self.showImage(_:)), on: Thread.main, with: nil, waitUntilDone: true)
  25. }
  26. download.name = name
  27.  
  28. return download
  29. }
  30.  
  31. @objc func showImage(_ image: UIImage?) {
  32.  
  33. }
  34.  
  35. }
Add Comment
Please, Sign In to add comment