Sobes.tech
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.