synchronized 使用 字符串 作为线程对象锁实现同步

网友投稿 1012 2022-11-05

synchronized 使用 字符串 作为线程对象锁实现同步

synchronized 使用 字符串 作为线程对象锁实现同步

字符串属于常量,不可变对象,可以用作锁

package com.yqq.app12;/** * @Author yqq * @Date 2021/11/28 01:03 * @Version 1.0 *//** * 程序员类 */class Programmer{ private String name; public Programmer(String name){ this.name = name; } /** * 去厕所 */ public void toilet(){ synchronized ("str"){ try { System.out.println(this.name+" 偷偷打开厕所门"); Thread.sleep(500); System.out.println(this.name+" 开始使用卫生间"); Thread.sleep(500); System.out.println(this.name+" 洗手"); Thread.sleep(500); System.out.println(this.name+" 开开心心的离开厕所"); }catch (Exception e){ e.printStackTrace(); } } }}/** * 去厕所的线程 */class Toilet extends Thread{ private Programmer programmer; public Toilet(Programmer programmer){ this.programmer = programmer; } @Override public void run() { this.programmer.toilet(); }}public class synchronizedThread { public static void main(String[] args) {// Programmer programmer = new Programmer("易青青");// new Computer(programmer).start();// new Worker(programmer).start(); Programmer worker = new Programmer("冯锐"); Programmer leader = new Programmer("吴军"); new Toilet(worker).start(); new Toilet(leader).start(); }}

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:一个基于okio的简化Socket操作的android框架,实现Socket断线自动连接
下一篇:守护线程使用
相关文章

 发表评论

暂时没有评论,来抢沙发吧~