随笔分类 - 多线程
摘要:原文链接:https://blog.csdn.net/weixin_50586285/article/details/113819652 volatile特点:关键字volatile是Java虚拟机提供的最轻量级的同步机制 。 当一个变量被定义成volatile之后,具备两种特性: 保证此变量对所有
阅读全文
摘要:相同点: 一旦执行方法,都可以使得当前的线程进入阻塞状态 不同点: 1.两个方法声明的位置不同:Thread类中声明sleep(),Object类中声明wait() 2.调用的要求不同:sleep()可以在任何需要的场景下调用。wait()必须使用在同步代码块或同步方法中 3.关于是否释放同步监视器
阅读全文
摘要:Lock锁 Lock与synchronized 继同步代码块和同步方法之后,Lock作为解决线程安全的第三种方式,JDK5.0新增,与synchronized对比如下:1.Lock是显示锁(手动开启和关闭锁,别忘了关闭锁),synchronized是隐式锁,出了作用域自动释放。 2.Lock只有代码
阅读全文
摘要:创建线程的两种方式 继承Thread类 1创建一个继承于Thread类的子类 2.重写Thread类的run方法() --> 将此线程执行的操作声明在run()方法中 3.创建Thread类的子类的对象 4.通过此对象调用start() 案例:多窗口售票(暂不考虑线程安全) 1 //1.创建一个继承
阅读全文