Сън срещу Чакай
Машини като компютри използват изкуствен език за създаване на програми, контрол върху тях и им позволяват да комуникират инструкции и да изразяват алгоритми. Този език се нарича език за програмиране.
Преди появата на компютрите, програмните езици вече са били използвани в станове и пиано. Тъй като използването на компютър стана по-често, сега се използват няколко езика за програмиране.
Има няколко компютърни езика, включително езици на високо ниво като: BASIC, C, C ++, Fortran, Pascal и Java. Всяка виртуална машина и процесор има свой собствен компютърен език, всеки със собствени слабости и силни страни и всяка виртуална машина изпълнява нишка при стартиране. Тази нишка изпълнява кода на приложението в програмата. Тя може да накара програмата да работи по-бързо и да помогне за тяхното изпълнение и полезност, особено когато се използват множество нишки.
Виртуални машини, като виртуалната машина на Java, поддържа концепция с много резби с по-високи приоритетни нишки, изпълнени първо над нишки с по-нисък приоритет, осигуряващи справедливо разделение на обработката на времето.
Той използва методи за управление на нишки, които могат да създават, контролират и прекратяват потока от контроли или нишки в споделено пространство. Два от тези методи за управление на нишки са методите на изчакване и заспиване.
Тези два метода са отделни. Методът на заспиване контролира изпълнението на нишката и забавя следващото действие, докато методът на чакане не контролира изпълнението на нишката, за да остави други нишки да се изпълняват.
Методът на чакане е дефиниран в клас Object и изпраща текущата нишка в състояние, което не може да се изпълни. Той се използва заедно с методите за известяване и известяванеВсички, за да остави кода за изпълнение на обект временно да направи пауза и да го възобнови по-късно.
Той работи, като извиква заключващ обект и оставя текущата нишка да се синхронизира с него. Изчакайте ще освободи ключалката и ще постави нишката в списъка с чакащи и ще остави другите нишки да се синхронизират с нея, което води до събуждане на оригиналната нишка. Програмистът определя конкретното време, когато изпълнението започне отново.
Методът на съня, от друга страна, се определя като статичен метод. Той забавя изпълнението на нишки, а не обекти, както и спира нишката, която се изпълнява. Изпраща текущи нишки в състояние, което не може да се изпълни за известен период от време. Той може да повлияе на поведението на приложения, които са многопоточни, защото поддържа ключалките за синхронизация на текущата нишка. След като нишката е в синхронизиран блок, никоя друга нишка не може да влезе в блока.
Резюме:
1. „Sleep“ е метод на управление на нишката, който е дефиниран като статичен метод, докато „изчакайте“ е метод за управление на нишката, който е дефиниран в клас Object.
2.Sleep е метод, който изпълнява нишки, докато чакането е метод, който изпълнява обекти.
3.Sleep запазва ключалките за синхронизация на текущата нишка и влияе върху поведението на приложенията, докато чакането не го прави.
4.Sleep контролира изпълнението на нишката и не позволява други нишки в синхронизиран блок, докато чакането не контролира изпълнението на нишката, за да пусне други нишки.