当前位置 : 主页 > 编程语言 > java >

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

来源:互联网 收集:自由互联 发布时间:2022-07-04
字符串属于常量,不可变对象,可以用作锁 package com . yqq . app12 ; /** * @Author yqq * @Date 2021/11/28 01:03 * @Version 1.0 */ /** * 程序员类 */ class Programmer { private String name ; public Programmer ( String nam

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

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();
}
}

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


上一篇:文件字符流
下一篇:没有了
网友评论