Sobes.tech
Junior — Middle

Кадом навъи навбатҳо дар GCD дастрасанд ва онҳо дар рафтор ва истифода чӣ фарқ доранд?

sobes.tech AI

Ҷавоб аз AI

GCD-д дараах төрлийн эгнээ байдаг:

  1. Цуваа (Serial Queues)

    • Үйлдлүүдийг дараалалтайгаар, нэг нэгээр гүйцэтгэдэг.
    • Нөөцөд хандахыг синхрончлох, уралдааны нөхцлийг зайлсхийхэд ашигладаг.
    • Өөрийн тохируулсан цуваа үүсгэж болно.
  2. Хамтран гүйцэтгэх цуваа (Concurrent Queues)

    • Олон үүргийг зэрэг гүйцэтгэдэг.
    • Олон улсын зэрэглэлийн (QoS) өөр өөр приоритеттэй глобал цуваанууд байдаг.
    • Олон процессорын системийг үр ашигтай ашиглах боломжийг олгодог.
  3. Гол цуваа (Main Queue)

    • Аппликешны гол урсгалтай холбоотой цуваа.
    • UI шинэчлэх, бусад үйлдлүүдийг гол урсгал дээр гүйцэтгэхэд ашигладаг.

Ялгаа, ашиглалт:

  • Цуваанууд гүйцэтгэлийн дарааллыг баталгаажуулж, нийтлэг нөөцөд зэрэг хандахыг зогсоодог.
  • Хамтран гүйцэтгэх цуваанууд үүргүүдийг зэрэг гүйцэтгэснээр гүйцэтгэлийн үр ашгийг нэмэгдүүлдэг.
  • iOS-д UI-тай ажиллахад гол цуваа заавал байх ёстой.

Цуваа үүсгэх, ашиглах жишээ:

let serialQueue = DispatchQueue(label: "com.example.serial")
serialQueue.async {
    // Үүрэг 1
}
serialQueue.async {
    // Үүрэг 2, Үүрэг 1-ээс хойш гүйцэтгэгдэнэ
}