Я хотел бы создать собственный класс, который расширяет NSOperation, чтобы обеспечить успешную связь с другим устройством с помощью bluetooth. Вопрос, который у меня есть, заключается в том, как я могу реализовать основной метод класса, чтобы он ожидал события, вызванного bluetooth?NSOperation wait for event
0
A
ответ
1
Никогда не используйте бесконечный цикл. Он не является энергоэффективным. Как сказал @lead_the_zeppelin, используйте семафор/мьютекс/и т. Д. Например, вы можете использовать dispatch_group
такие функции:
dispatch_group_t waitGroup = dispatch_group_create();
dispatch_group_enter(waitGroup);
dispatch_async(otherQueue, ^{
//long-running code
dispatch_group_leave(waitGroup);
}
dispatch_group_wait(waitGroup, DISPATCH_TIME_FOREVER);
-1
То, что я сделал, это просто использовать непрерывный цикл в то время, пока какое-то событие не вызовет BOOL, чтобы остановить цикл. Я не знаю, безопасно ли это, но это работает.
while(!self.didFinish){
;
}
Смежные вопросы
- 1. wait for event regulary
- 2. Python Pygames wait for event
- 3. Twisted wait for event in loop
- 4. Actionscript Wait for Asynchronous Event Within Function
- 5. qt wait for signal/event, GUI
- 6. jQuery UI droppable «drop» event to wait for revert
- 7. Стандартная версия библиотеки «Wait for Alert/Event» для потоковой передачи
- 8. wait for for in loop
- 9. Hub.start - wait for finish
- 10. android wait for
- 11. wait for file creation
- 12. Splinter wait for element.visible
- 13. keylistener wait for input
- 14. wait for jQuery
- 15. Java wait for IClientNotificationService
- 16. wait for css_parser.getCSSFiles()
- 17. Java wait for FileChooser
- 18. C++ wait for input
- 19. TcpClient wait for CRLF
- 20. wait for document.body существование
- 21. jquery, wait for completed
- 22. wait for thread creation
- 23. wait for javascript thread
- 24. Javascript for loop, wait for function callback
- 25. for loop .. wait for AJAX request
- 26. HTMLUnit Wait For JS Issue
- 27. Java Wait For-Thread Вопрос
- 28. процесс wait for не возвращается
- 29. Watir Webdriver wait for page
- 30. JQuery wait for Ajax Result
никогда не используйте бесконечный цикл. Используйте семафор или что-то подобное. –
Не могли бы вы привести мне пример? –
, пожалуйста, посмотрите на решение Sega-Zero, чтобы вместо этого использовать групповую диспетчеризацию. [Read] (https://developer.apple.com/library/mac/documentation/General/Conceptual/ConcurrencyProgrammingGuide/OperationQueues/OperationQueues.html) больше о очередях отправки. –