Ո՞րն է տարբերությունը կորուտինի և թելի միջև:
Ո՞րն է տարբերությունը կորուտինի և թելի միջև:

Video: Ո՞րն է տարբերությունը կորուտինի և թելի միջև:

Video: Ո՞րն է տարբերությունը կորուտինի և թելի միջև:
Video: Ո՞րն է քրիստոնեության և մահմեդականության տարբերությունը 2024, Մայիս
Anonim

Մեկ կարևոր թելերի միջև տարբերությունը և կորուտիններ դա է թելեր սովորաբար նախատեսված են կանխարգելիչ, մինչդեռ կորուտիններ չեն. Որովհետեւ թելեր կարող է ցանկացած պահի վերապլանավորվել և կարող է միաժամանակ գործարկվել՝ օգտագործելով ծրագրերը թելեր պետք է զգույշ լինել կողպելու հարցում.

Այս կերպ, ի՞նչ են այն կորուտինները, որոնք այն աշխատում է տարբեր թեմայի վրա:

Կորուտիններ ոչինչ չունենալու անել հետ Թեմաներ . Կորուտին մեթոդները կարող է ժամանակի ընթացքում մաս առ մաս կատարվի, բայց բոլոր գործընթացները դեռ կատարվում են մեկ հիմնական միջոցով Թեմա . Եթե ունեք մեկից ավելի տրամաբանական պրոցեսոր, շատ թելեր մահապատժի են ենթարկվում տարբեր պրոցեսորներ.

Բացի այդ, ի՞նչ է թելը ծրագրավորման մեջ: Ա թել համակարգչային գիտության մեջ կարճ է a թել կատարման։ Թեմաներ միջոց են ա ծրագիրը ինքն իրեն բաժանել (որը կոչվում է «բաժանել») երկու կամ ավելի միաժամանակ (կամ կեղծ միաժամանակ) առաջադրանքների:

Նաև իմանալ՝ ի՞նչ է Coroutine-ը, արդյոք այն աշխատում է նոր թեմայում:

Ինչ է տեղի ունենում Ա կորուտին դա այն է վազել հիմնականի վրա թել յուրաքանչյուր շրջանակ և գործարկվում է այնքան ժամանակ, մինչև կատարվի եկամտաբերություն, այնուհետև այն կդադարեցվի այնքան ժամանակ, մինչև կատարվի եկամտաբերության պայմանը: Ա թել արդյունավետ կերպով վազում է միևնույն ժամանակ այլ կոդերի հետ (սա ճիշտ է միայն այն դեպքում, երբ դուք ունեք մի քանի միջուկներ):

Ե՞րբ պետք է օգտագործեմ runBlocking-ը:

Իրականում դու օգտագործել runBlocking-ը կասեցնել գործառույթներ կանչել «արգելափակման» կոդով, որը այլ կերպ հնարավոր չէր լինի կանչել այնտեղ կամ այլ կերպ ասած՝ դուք օգտագործել այն անվանել suspend ֆունկցիաները կորուտինային համատեքստից դուրս (ձեր օրինակում async-ին փոխանցված բլոկը կասեցման ֆունկցիան է):

Խորհուրդ ենք տալիս: