zoukankan      html  css  js  c++  java
  • synchronized(五)

    package com.bjsxt.base.sync005;
    /**
    * synchronized的重入
    * @author alienware
    *
    */
    public class SyncDubbo2 {

    static class Main {
    public int i = 10;
    public synchronized void operationSup(){
    try {
    i--;
    System.out.println("Main print i = " + i);
    Thread.sleep(100);
    } catch (InterruptedException e) {
    e.printStackTrace();
    }
    }
    }

    static class Sub extends Main {
    public synchronized void operationSub(){
    try {
    while(i > 0) {
    i--;
    System.out.println("Sub print i = " + i);
    Thread.sleep(100);
    this.operationSup();
    }
    } catch (InterruptedException e) {
    e.printStackTrace();
    }
    }
    }

    public static void main(String[] args) {

    Thread t1 = new Thread(new Runnable() {

    public void run() {
    Sub sub = new Sub();
    sub.operationSub();
    }
    });

    t1.start();
    }


    }

    运行结果:

    Sub print i = 9
    Main print i = 8
    Sub print i = 7
    Main print i = 6
    Sub print i = 5
    Main print i = 4
    Sub print i = 3
    Main print i = 2
    Sub print i = 1
    Main print i = 0

  • 相关阅读:
    javaweb
    反射 day1
    JDBC-day1
    总结
    day5
    day4
    day3
    18.10.17 考试总结
    洛谷P2172 [bzoj] 2150 部落战争
    18.10.15 考试总结
  • 原文地址:https://www.cnblogs.com/tsdblogs/p/8758499.html
Copyright © 2011-2022 走看看