Термин Swift и iOS обновлено

Инверсия приоритетов: что это

Коротко

Инверсия приоритетов: высокоприоритетная задача ждёт ресурс, захваченный низкоприоритетной, а ту вытесняют задачи среднего приоритета. GCD повышает QoS очереди, когда на неё делают sync или ставят блок с высоким QoS (QoS override).

Определение

Высокоприоритетная задача ждёт ресурс, захваченный низкоприоритетной, а ту вытесняют задачи среднего приоритета. GCD повышает QoS очереди, когда на неё делают sync или ставят блок с высоким QoS (QoS override).

Подробнее

Семафоры не знают, кто их освободит, и override не работает. Поэтому для взаимного исключения лучше os_unfair_lock, Mutex или serial-очередь.

Запомните, а не прочитайте

В тренажёре карточка вернётся, когда начнёт забываться. А билеты по Swift и iOS проверят, что термин понятен в деле.