thread07

来源:互联网 发布:黑马28期java就业班 编辑:程序博客网 时间:2024/06/03 15:38
package com.neutron.t07;import java.util.concurrent.TimeUnit;/** * 问题:一个线程是否是否可以调用另一个同步方法呢? */public class T07 {    public static synchronized void set2() {        get2();        System.out.println("hello set2");        try {            TimeUnit.SECONDS.sleep(5);        } catch (InterruptedException e) {            e.printStackTrace();        }    }    public static synchronized void get2() {        System.out.println("hello get2");        try {            TimeUnit.SECONDS.sleep(2);        } catch (InterruptedException e) {            e.printStackTrace();        }    }    /**     运行结果:        hello get2        hello set2     */    public static void main(String[] args) {        set2();    }}/*    过程解说:    1.1个synchronized修饰的方法是可以调用另一个synchronized修饰的方法      同一个线程已经拥有了某个对象的锁,在当前线程再申请时依旧会获得当前对象的锁,也就是说synchronized的锁是可重入的。 */

原创粉丝点击