Sobes.tech
Junior — Middle

İşlem veya iş parçacığı yönetiminde sleep ve yield fonksiyonları arasındaki fark nedir?

sobes.tech yapay zeka

AI'dan gelen yanıt

Функция sleep приостанавливает выполнение текущего потока на заданное время, освобождая процессор, но поток остаётся в состоянии ожидания и не готов к выполнению, пока не истечёт время сна.

Функция yield добровольно отдаёт процессор другим потокам, которые готовы к выполнению, но при этом текущий поток остаётся в состоянии готовности и может быть немедленно возобновлён планировщиком, если других потоков нет или они не готовы.

Пример:

Thread.sleep(1000); // поток "спит" 1 секунду
Thread.yield();     // поток предлагает планировщику переключиться на другой поток

Таким образом, sleep используется для паузы, а yield — для добровольной уступки процессора без паузы.