Korutin ilə iplik arasındakı fərq nədir?
Korutin ilə iplik arasındakı fərq nədir?

Video: Korutin ilə iplik arasındakı fərq nədir?

Video: Korutin ilə iplik arasındakı fərq nədir?
Video: #6 Синхронизация между корутинами || Курс по корутинам 2024, Bilər
Anonim

Bir vacib iplər arasındakı fərq və korutinlər Odur iplər adətən qabaqcadan planlaşdırılmışdır korutinlər deyil. Çünki iplər hər an yenidən planlaşdırıla bilər və eyni vaxtda proqramları istifadə edərək icra edə bilər iplər bağlamaqda diqqətli olmalıdır.

Bu şəkildə, müxtəlif ipliklər üzərində işləyən koroutinlər hansılardır?

Korutinlər heç bir şey yoxdur et ilə Mövzular . Korutin üsulları bacarmaq zamanla parça-parça yerinə yetirilir, lakin bütün proseslər hələ də tək bir əsas tərəfindən həyata keçirilir Mövzu . Birdən çox məntiqi CPU varsa, çoxlu iplər üzərində icra edilir fərqli CPU-lar.

Bundan əlavə, proqramlaşdırmada mövzu nədir? A sap kompüter elmində a üçün qısadır sap icrasının. Mövzular üçün bir yoldur proqram özünü iki və ya daha çox eyni vaxtda (yaxud psevdo-eyni vaxtda) işləyən vəzifələrə bölmək ("parçalanma" adlanır).

Həmçinin bilmək lazımdır ki, Coroutine nədir, o, yeni mövzuda işləyir?

a ilə nə baş verir korutin odur ki qaçmaq əsas üzərində sap hər çərçivə və məhsul verənə qədər icra edir - sonra məhsuldarlıq şərti yerinə yetirilənə qədər dayandırılacaq. A sap səmərəli qaçır digər kodlarla eyni vaxtda (bu, yalnız bir neçə nüvəniz olduqda doğrudur).

runBlocking-dən nə vaxt istifadə etməliyəm?

Əslində sən runBlocking istifadə edin "Bloklama" kodunda, əks halda orada və ya başqa sözlə çağırıla bilməyən dayandırma funksiyalarını çağırmaq üçün: siz istifadə edin korutin kontekstindən kənarda dayandırma funksiyalarını çağırmaq üçün (sizin nümunənizdə async-ə ötürülən blok dayandırma funksiyasıdır).

Tövsiyə: