Різниця між режимом сну і очікування

Сон проти чекати

Такі машини, як комп'ютери, використовують штучну мову для створення програм, керування ними та дозволяють спілкуватися з інструкціями та виражати алгоритми. Ця мова називається мовою програмування.

До появи комп’ютерів мови програмування вже використовувались у ткацьких верстатах та на фортепіано. Оскільки використання комп’ютера стало більш поширеним, зараз використовувалося кілька мов програмування.

Існує кілька комп'ютерних мов, включаючи мови високого рівня, такі як: BASIC, C, C ++, Fortran, Pascal та Java. У кожної віртуальної машини та процесора є своя комп'ютерна мова, у кожного є свої слабкі та сильні сторони, і кожна віртуальна машина запускає нитку при запуску. Цей потік виконує код програми в програмі. Це може змусити програму запуститись швидше і допомогти в їх продуктивності та корисності, особливо коли використовується декілька потоків.

Віртуальні машини, такі як віртуальна машина Java, підтримують багатопотокову концепцію з потоками вищого пріоритету, виконаними спочатку над нитками нижчого пріоритету, що забезпечує справедливий розподіл часу.

Він використовує методи управління потоками, які можуть створювати, контролювати та припиняти потік елементів управління або потоків у спільному просторі. Два з цих методів управління потоками - це метод очікування та сну.

Ці два методи є окремими. Метод сну контролює виконання потоку і затримує наступну дію, поки метод очікування не контролює виконання потоку для запуску інших потоків.

Метод очікування визначений у класі Object та надсилає поточний потік у не запущений стан. Він використовується разом з методами notify and notifyAll, щоб дозволити коду виконання об'єкта тимчасово призупинятись та відновити його пізніше.

Він працює, викликаючи об’єкт блокування та даючи поточний потік синхронізуватися з ним. Зачекайте, що вимкне замок і додасть нитку до списку очікування, а інші потоки синхронізуються з нею, що спричинить прокидання початкового потоку. Програміст визначає конкретний час, коли виконання починається заново.

Метод сну, з іншого боку, визначається як статичний метод. Він затримує виконання потоків, а не об'єктів, а також призупиняє виконання потоку. Він пересилає поточні потоки в стан, який не можна виконати, протягом певного періоду часу. Це може вплинути на поведінку додатків, які є багатопотоковими, оскільки він зберігає блокування синхронізації поточного потоку. Після того, як потік знаходиться в синхронізованому блоці, жоден інший потік не може ввести блок.

Підсумок:

1. "Сон" - це метод управління потоком, який визначається як статичний метод, тоді як "чекати" - це метод управління потоком, визначений у класі "Об'єкт"..
2.Sleep - це метод, який виконує потоки, а очікування - метод, який виконує об'єкти.
3.Sleep зберігає блокування синхронізації поточного потоку та впливає на поведінку додатків, поки не чекає.
4.Sleep контролює виконання потоку і не дозволяє іншим потокам в синхронізованому блоці, поки чекати не контролює виконання потоку, щоб інші потоки запускалися.