实现两线程的同步
Posted 提拉没有米苏
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实现两线程的同步相关的知识,希望对你有一定的参考价值。
1、使用Object的wait和notify
public class WaitAndNotifyDemo { public static void main(String[] args) throws InterruptedException { MThread mThread = new MThread(); synchronized (mThread) { try { mThread.start(); // 主线程睡眠3s Thread.sleep(3000); System.out.println("before wait"); // 阻塞主线程 mThread.wait(); System.out.println("after wait"); } catch (InterruptedException e) { e.printStackTrace(); } } } } class MThread extends Thread { public void run() { synchronized (this) { System.out.println("before notify"); notify(); System.out.println("after notify"); } } }
运行结果:
before wait
before notify
after notify
after wait
两线程执行图序:
以上是关于实现两线程的同步的主要内容,如果未能解决你的问题,请参考以下文章