Sobes.tech
Junior — Middle

Можеш ли да назовеш основните примитиви, използвани в GCD (Grand Central Dispatch)?

sobes.tech AI

Отговор от AI

Основните примитиви в Grand Central Dispatch (GCD) са:

  • Dispatch опашки (Dispatch Queues): позволяват изпълнение на задачи асинхронно или синхронно. Има последователни (serial) и паралелни (concurrent) опашки.
  • Dispatch групи (Dispatch Groups): позволяват групиране на няколко задачи и получаване на уведомление, когато всички са завършили.
  • Dispatch семафори (Dispatch Semaphores): използват се за управление на достъпа до ресурси, като ограничават броя на едновременно изпълняваните задачи.
  • Dispatch работни елементи (Dispatch Work Items): обекти, които капсулират блокове код, които могат да бъдат стартирани, отменени или изчакани.
  • Dispatch източници (Dispatch Sources): позволяват реагиране на системни събития, като таймери, промени във файлове и др.

Пример за създаване и използване на последователна опашка:

let serialQueue = DispatchQueue(label: "com.example.serialQueue")
serialQueue.async {
    print("Изпълнение на задача в последователната опашка")
}