⊗tlGpBsTA 5 of 14 menu

Sincronizarea sarcinilor în Gulp

Ar trebui să înțelegeți că toate sarcinile Gulp - sunt asincrone. Ce înseamnă acest lucru, să privim un exemplu. Să presupunem că în interiorul unei sarcini publice sunt apelate două sarcini private:

function taskD(cb) { task1(cb); task2(cb); cb(); }

Asincronicitatea înseamnă că sarcina task2 nu va aștepta finalizarea executării sarcinii task1, ci se va executa în paralel cu aceasta.

Să ne gândim la acest lucru printr-un exemplu mai practic. Să presupunem că prima sarcină transformă LESS în CSS, iar a doua sarcină - minimizează CSS-ul obținut.

În acest caz, ne vom confrunta cu o problemă: până la urmă, nu poți minimiza fișierul CSS înainte ca rezultatul compilării LESS să ajungă în el!

Cu toate acestea, dacă sarcinile s-ar executa sincron - succesiv una după alta, ne-am confrunta cu o altă problemă: sarcinile care pot fi efectuate în paralel, s-ar executa una după alta, încetinind funcționarea Gulp. Să ne gândim și la acest lucru printr-un exemplu.

Să presupunem că prima sarcină minimizează fișierele CSS, iar a doua sarcină - minimizează fișierele JavaScript. Evident, aceste două operații neconectate pot fi efectuate simultan.

Din fericire, Gulp oferă instrumente, care permit indicarea explicită a faptului că sarcini trebuie să fie executate în paralel, iar care - succesiv. Aceste instrumente le vom analiza în lecția următoare.

Gândiți-vă la un exemplu de două sarcini care trebuie să fie executate doar succesiv.

Gândiți-vă la un exemplu de două sarcini care trebuie să fie executate doar în paralel.

Română
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Folosim cookie pentru funcționarea site-ului, analiză și personalizare. Prelucrarea datelor are loc în conformitate cu Politica de confidențialitate.
acceptă toate configurează respinge