Junior — Middle
Môžeš uviesť hlavné primitívy používané v GCD (Grand Central Dispatch)?
sobes.tech AI
Odpoveď od AI
Hlavné primitívy v Grand Central Dispatch (GCD) sú:
- Dispatchové fronty (Dispatch Queues): umožňujú spúšťanie úloh asynchrónne alebo synchronizovane. Existujú sekvenčné (serial) a paralelné (concurrent) fronty.
- Dispatchové skupiny (Dispatch Groups): umožňujú skupinovať viacero úloh a dostávať oznámenie, keď sú všetky dokončené.
- Dispatchové semafory (Dispatch Semaphores): slúžia na riadenie prístupu k zdrojom, obmedzovaním počtu úloh, ktoré môžu bežať súčasne.
- Dispatchové pracovné položky (Dispatch Work Items): objekty, ktoré kapsulujú bloky kódu, ktoré je možné spustiť, zrušiť alebo na ne čakať.
- Dispatchové zdroje (Dispatch Sources): umožňujú reagovať na systémové udalosti, ako sú časovače, zmeny súborov atď.
Príklad vytvorenia a použitia sekvenčnej fronty:
let serialQueue = DispatchQueue(label: "com.example.serialQueue")
serialQueue.async {
print("Vykonávanie úlohy v sekvenčnej fronte")
}