Skirtumas tarp miego ir laukimo

Miegas vs laukimas

Tokios mašinos kaip kompiuteriai naudoja dirbtinę kalbą programoms kurti, valdyti ir leisti joms perduoti instrukcijas ir išreikšti algoritmus. Ši kalba vadinama programavimo kalba.

Iki kompiuterių atsiradimo programavimo kalbos jau buvo naudojamos staklėse ir pianinuose. Kai kompiuteris tapo įprastesnis, dabar buvo naudojamos kelios programavimo kalbos.

Yra keletas kompiuterių kalbų, įskaitant aukšto lygio kalbas, tokias kaip: BASIC, C, C ++, Fortran, Pascal ir Java. Kiekviena virtualioji mašina ir centrinis procesorius turi savo kompiuterio kalbą, kiekviena turi savo silpnąsias ir stipriąsias puses, o paleidus kiekvieną virtualią mašiną, ji eina gija. Ši gija vykdo programos kodą programoje. Tai gali padėti paleisti programą greičiau ir padėti ją atlikti bei būti naudinga, ypač kai naudojamos kelios gijos.

Virtualios mašinos, tokios kaip „Java“ virtualioji mašina, palaiko kelių sriegių koncepciją su aukštesnio prioriteto gijomis, kurios pirmiausia vykdomos virš žemesnio prioriteto gijų, užtikrinant teisingą laiko apdorojimo pasiskirstymą..

Jis naudoja gijų valdymo metodus, kurie gali sukurti, valdyti ir nutraukti valdiklių ar gijų srautą bendro naudojimo erdvėje. Du iš šių gijų valdymo būdų yra laukimo ir miego metodai.

Šie du metodai yra atskiri. Miego metodas kontroliuoja gijos vykdymą ir atideda kitą veiksmą, o laukimo metodas nekontroliuoja gijos vykdymo, kad kiti gijos būtų vykdomos.

Laukimo būdas yra apibrėžtas objekto klasėje ir siunčia esamą giją į nepaleidžiamą būseną. Jis naudojamas kartu su pranešimo ir pranešimo visais metodais, leidžiančiais objekto vykdymo kodui laikinai pristabdyti ir atnaujinti jį vėliau.

Tai veikia paskambinus užrakto objektui ir leidžiant sinchronizuoti esamą giją. Palaukęs atleis užraktą ir įtrauks siūlą į laukiančiųjų sąrašą bei leis kitiems gijams sinchronizuoti, sukeldamas pradinį siūlą. Programuotojas nustato konkretų laiką, kada vykdymas vėl prasideda.

Miego metodas, kita vertus, apibūdinamas kaip statinis metodas. Tai atideda gijų, o ne objektų vykdymą, taip pat sustabdo vykdomą giją. Jis tam tikru laikotarpiu siunčia dabartines gijas į neveikiamą būseną. Tai gali paveikti programų, kuriose yra daug sriegių, elgseną, nes ji išlaiko esamo gijos sinchronizacijos užraktus. Kai gija yra sinchronizuotame bloke, joks kitas gija negali patekti į bloką.

Santrauka:

1. „Miego režimas“ yra gijų valdymo metodas, kuris apibūdinamas kaip statinis metodas, o „laukti“ yra gijų valdymo metodas, apibrėžtas objekto klasėje..
2. Miego režimas yra metodas, kuris vykdo gijas, o laukimas yra metodas, vykdantis objektus.
3. „Miegas“ saugo esamo gijos sinchronizavimo užraktus ir daro įtaką programų veikimui, o laukti nereikia.
4. „Miegas“ kontroliuoja gijos vykdymą ir neleidžia sinchronizuotame bloke naudoti kitų gijų, o laukimas nekontroliuoja gijos vykdymo, kad kitos gijos vyktų.