洞察探索如何利用兼容微信生态的小程序容器,实现跨平台开发,助力金融和车联网行业的数字化转型。
1012
2022-11-05
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小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~