Junior — Middle
Koji je razlog što možemo pokrenuti hiljadu korutina, dok je pokretanje hiljadu niti obično nemoguće?
sobes.tech АИ
Одговор од АИ
Razlog je u tome što su korutine lagani niti, upravljane na nivou aplikacije (na primer, pomoću planera u Kotlinu ili drugim jezicima), a ne sistemske niti operativnog sistema. One ne zahtevaju dodelu zasebnog steka memorije i resursa OS-a, zbog čega ih je moguće pokrenuti hiljade bez značajnog opterećenja.
Za razliku od toga, sistemske niti zahtevaju dodelu memorije za stek, kontekst prebacivanja i druge resurse, što ograničava njihov broj. Korutine, s druge strane, rade u jednom ili više niti, prebacujući se vrlo brzo i efikasno, što omogućava skaliranje asinhronih operacija bez velikih troškova.