Нужны некоторые пояснения о очереди отправки, нить и nsrunloopIOS

Программируем под IOS
Ответить
Anonymous
 Нужны некоторые пояснения о очереди отправки, нить и nsrunloop

Сообщение Anonymous »

Следующие вещи - это то, что я знаю и понимаю:
Глобальная очередь - это параллельная очередь , которая может отправлять задачи на несколько потоков. Порядок выполнения задачи не гарантируется. Например ,:

Код: Выделить всё

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0), {
for (int i; i
Каждый раз, когда только одна задача отправляется в поток и выполняется. Заказ - fifo. < /P>
[b] ===== Что я запутался и не полностью понимаю ======= < /strong> < /p>
[list]
[*]  Основной поток имеет nsrunloop, петлевые задачи в основной нитью. Мне интересно, какова связь между очередью отправки и цикл запуска?
Могу ли я понять это, если отправить задачу в основной потоке, nsrunloop основной потоки получите отправленную задачу и выполните ее? Создает ли система iOS/OSX автоматически не только потоки, но и создает NSRUNLOOP для каждого потока? А затем цикл прогона в каждом потоке получают отправленную задачу из глобальной очереди и выполнить его? < /p>
< /li>
  Кто знает поток? Знает ли функция dispatch_async () 
и dispatch_sync () , к какой потоке для отправки задачи или в очереди [/b], в какой поток для отправки задачи? (Этот вопрос связан с вопросом 3)

[/list]

Подробнее здесь: https://stackoverflow.com/questions/380 ... -nsrunloop
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»