What is the difference between wait() and sleep() methods in Java?
Aug 26, 2023 pm 11:37 PMsleep() method is a static method of the Thread class, which can send the current running The data thread enters the "not runnable" state, and the wait() method is an instance method, we call it using the thread object, and it only affects the object. sleep() The method wakes up or calls the interrupt() method after the time expires, while the wait() method wakes up or calls after the time expires >notify() or notifyAll() method. The sleep() method does not release any locks or monitors while waiting, while the wait() method releases locks or monitors while waiting.
Sleep() method syntax
public static void sleep(long millis) throws InterruptedException
wait() method syntax
public final void wait() throws InterruptedException<strong> </strong>
Example
public class ThreadTest implements Runnable { private int number = 10; public void methodOne() throws Exception { synchronized(this) { number += 50; System.out.println("Number in methodOne(): " + number); } } public void methodTwo() throws Exception { synchronized(this) { Thread.sleep(2000); // calling sleep() method this.wait(1000); // calling wait() method number *= 75; System.out.println("Number in methodTwo(): " + number); } } public void run() { try { methodOne(); } catch (Exception e) { e.printStackTrace(); } } public static void main(String[] args) throws Exception { ThreadTest threadTest = new ThreadTest(); Thread thread = new Thread(threadTest); thread.start(); threadTest.methodTwo(); } }
Output
Number in methodOne(): 60 Number in methodTwo(): 4500
The above is the detailed content of What is the difference between wait() and sleep() methods in Java?. For more information, please follow other related articles on the PHP Chinese website!

Hot Article

Hot tools Tags

Hot Article

Hot Article Tags

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Break or return from Java 8 stream forEach?
