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- ից հետո
}