Разлика између спавања и чекања

Слееп вс Ваит

Машине попут рачунара користе вештачки језик да би креирали програме, управљали њима и омогућавали им да комуницирају упутства и изражавају алгоритме. Овај језик се назива програмски језик.

Пре појаве рачунара, програмски језици су се већ користили у ткалачким станицама и клавирима. Како је употреба рачунара постала чешћа, сада се користи неколико програмских језика.

Постоји неколико рачунарских језика, укључујући језике високог нивоа, као што су: БАСИЦ, Ц, Ц ++, Фортран, Пасцал и Јава. Свака виртуална машина и ЦПУ имају свој рачунарски језик, сваки са својим слабостима и јаким снагама, а свака виртуална машина покреће нит када је покренута. Ова нит извршава апликацијски код у програму. Програм може да убрза покретање програма и помогне у њиховом извођењу и корисности, посебно када се користи више нити.

Виртуелне машине, као што је Јава виртуелна машина, подржавају концепт с више навоја с нитима вишег приоритета који се прво извршавају над нитима нижег приоритета, осигуравајући правичну подјелу обраде времена.

Користи методе управљања нитима које могу да креирају, контролишу и прекидају ток контрола или нити у заједничком простору. Две од ових метода управљања нитима су методе чекања и спавања.

Ове две методе су одвојене. Метода мировања контролира извршење нити и одлаже сљедећу радњу док метода чекања не контролира извршење нити да би пустио остале нити.

Метода чекања дефинирана је у класи Објецт и шаље тренутни конац у стање које се не може покренути. Користи се заједно са методама нотифи анд нотифиАлл да би се извршни код објекта привремено зауставио и касније наставио.

Дјелује тако што позива објект закључавања и оставља тренутну нит да се синхронизује с њим. Сачекајте да отпусти закључавање и стави ће нит на листу чекања и пустити да се остали нити синхронизују с њом, узрокујући да се оригинални нит пробуди. Програмер одређује одређено време када се извршавање покреће поново.

Метода спавања, с друге стране, дефинисана је као статичка метода. Одлаже извршење нити, а не објеката, као и обуставља нит која се извршава. Она шаље тренутне нити у стање које се не може покренути неко време. Може утицати на понашање апликација које су с више навоја јер чувају браве за синхронизацију тренутне нити. Једном када се нит налази у синхронизованом блоку, ниједан други навој не може ући у блок.

Резиме:

1. "Слееп" је метода управљања нитима која је дефинисана као статичка метода док је "ваит" метода управљања нитима која је дефинисана у класи Објецт.
2.Слееп је метода која извршава теме, док чека је метода која извршава објекте.
3. Слееп чува закључавања за синхронизацију тренутне нити и утиче на понашање апликација док не чека.
4.Слееп контролише извршење нити и не дозвољава другим нитима у синхронизованом блоку док чекање не контролише извршење нити како би пустио остале нити.