Sobes.tech
Middle

Երբ ֆիզիկական միավորի միավորի երկու հոսք է կատարվում, դա կլինի սինխրոն կամ պառալել:

sobes.tech AI

Պատասխան AI-ից

Այս ամենը տեղի կունենա սինխրոն՝ միաժամանակյա կատարման տեսանկյունից նույն միկրոմոմենտում։ Ֆիզիկական ռեսուրսը (կենտրոնը) չի կարող կատարել երկու առաջադրանք ամբողջությամբ միաժամանակ։

Android օպերացիոն համակարգը օգտագործում է կանխարգելիչ բազմակատարություն։ Կենտրոնը փոխում է թելերի միջև, յուրաքանչյուրին տրամադրելով փոքր ժամանակահատվածներ։ Սա ստեղծում է համընկնության (կոնկուրսության) տպավորություն։

// Օրինակ՝ կանխարգելիչ բազմակատարություն
fun main() {
    val thread1 = Thread {
        for (i in 1..5) {
            println("Թել 1: $i")
            Thread.sleep(10) // Աշխատանքի իմիտացիա
        }
    }

    val thread2 = Thread {
        for (i in 1..5) {
            println("Թել 2: $i")
            Thread.sleep(10) // Աշխատանքի իմիտացիա
        }
    }

    thread1.start()
    thread2.start()
}

Վերևի օրինակով մենք տեսնում ենք, որ երկու թելերի տողերի ելքը փոխվում է, ինչը ցույց է տալիս կոնտեքստի փոխարկումը նրանց միջև։

Համconcepts:

  • Համընկնություն՝ միաժամանակյա կատարման մի քանի առաջադրանք նույն ժամանակում՝ մի քանի ֆիզիկական CPU կամ կենտրոններում։
  • Սինխրոն / Կոնկուրս՝ մի քանի առաջադրանքների կատարման ժամանակահատվածում, երբ պրոցեսորը արագ փոխում է առաջադրանքների միջև, ստեղծելով նրանց միաժամանակյա կատարման տպավորություն։

Այսպիսով, մեկ կենտրոնում տեղի է ունենում միաժամանակյա (կոնկուրսային) մի քանի թելերի կատարմամբ՝ կոնտեքստի փոխարկման միջոցով։