iOS вопросы : Вопрос 1 : 7

Опишите что такое NSOperationQueue. Где и как это используется?

 

Уважаемые учащиеся ниже Вы сможете увидеть ответ, перед тем, как ответить, пожалуйста, постарайтесь написать для себя ответ на черновике, и только потом сравните наш ответ с Вашим: 

 

 

 

 

 

Верно ли наше решение?

Ответ:

Класс NSOperationQueue регулирует порядок выполнения множества операций, которые, представлены объектами класса NSOpertion. Свойственно использовать очереди операций (operation queue) для исполнения каких-либо асинхронных операций в другом (не главном) потоке (background thread).
Другими словами, используя NSOperationQueue мы получаем возможность выполнять ту или иную задачу в новом потоке, т.е. запускать ее в фоне. 
Пример использования:

def thread1 
  10.times { |i| NSLog("\t Thread1: #{i}") } 
end 
 
def thread2 
  20.times { |i| NSLog("\t\t  Thread2: #{i}") } 
end 
 
def thread3 
  30.times { |i| NSLog("\t\t\t   Thread3: #{i}") } 
end 
 
def viewDidLoad 
  queue = NSOperationQueue.new 
  queue.maxConcurrentOperationCount = 3  
  queue.name = "threads operation" 
 
  operation1 = NSInvocationOperation.alloc.initWithTarget(self, selector: :thread1, object:nil) 
  operation2 = NSInvocationOperation.alloc.initWithTarget(self, selector: :thread2, object:nil) 
  operation3 = NSInvocationOperation.alloc.initWithTarget(self, selector: :thread3, object:nil) 
 
  queue.addOperation(operation1) 
  queue.addOperation(operation2) 
  queue.addOperation(operation3) 
 
end 
 
viewDidLoad 
 
sleep 10.0 
1 балл


© Copyright © 2017 - 2019 Все права защищены. Бесплатное онлайн образование.