Junior — Middle
Meg tudod nevezni a GCD-ben (Grand Central Dispatch) használt fő primitíveket?
sobes.tech MI
Válasz az MI-től
A Grand Central Dispatch (GCD) fő primitívumai a következők:
- Dispatch sorok (Dispatch Queues): lehetővé teszik feladatok aszinkron vagy szinkron végrehajtását. Léteznek szekvenciális (soros) és párhuzamos (konkurens) sorok.
- Dispatch csoportok (Dispatch Groups): lehetővé teszik több feladat csoportosítását és értesítést, amikor mindegyik befejeződik.
- Dispatch szemináriumok (Dispatch Semaphores): a hozzáférés kezelésére szolgálnak erőforrásokhoz, korlátozva a párhuzamosan futó feladatok számát.
- Dispatch munkadarabok (Dispatch Work Items): olyan objektumok, amelyek kódblokkokat kapszuláznak, amelyeket elindíthatunk, megszakíthatunk vagy várhatunk a befejezésükre.
- Dispatch források (Dispatch Sources): lehetővé teszik rendszer eseményekre való reagálást, például időzítők, fájl módosítások stb.
Példa egy szekvenciális sor létrehozására és használatára:
let serialQueue = DispatchQueue(label: "com.example.serialQueue")
serialQueue.async {
print("Feladat végrehajtása a szekvenciális sorban")
}