2.2.14内置类与同步:测试1

Posted 成功的路上总是离不开贵人的帮助,名师的指点和小人的刺激。

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2.2.14内置类与同步:测试1相关的知识,希望对你有一定的参考价值。

本实验测试是在内置类中有两个同步方法,但使用的却是不同的锁,打印结果也是异步的

package com.cky.bean;

/**
 * Created by edison on 2017/12/9.
 */
public class OutClass {
    static class Inner {
        public void method1(){
            synchronized ("其他的锁") {
                for (int i = 0; i <= 10; i++) {
                    System.out.println(Thread.currentThread().getName() +" i="+i);
                    try {
                        Thread.sleep(100);
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                }
            }
        }

        public synchronized  void method2() {
            for (int i = 11; i <=20 ; i++) {
                System.out.println(Thread.currentThread().getName() + " i="+i);
                try {
                    Thread.sleep(100);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}
package com.cky.bean;

/**
 * Created by edison on 2017/12/9.
 */
public class Test2 {
    public static void main(String[] args) {
        OutClass.Inner inner = new OutClass.Inner();
        Thread t1 = new Thread(new Runnable() {
            @Override
            public void run() {
                inner.method1();
            }
        }, "A");
        Thread t2 = new Thread(new Runnable() {
            @Override
            public void run() {
                inner.method2();
            }
        }, "B");
        t1.start();
        t2.start();
    }
}
B i=11
A i=0
B i=12
A i=1
B i=13
A i=2
B i=14
A i=3
B i=15
A i=4
B i=16

由于持有不同的对象监视器,所以打印结果就是乱序的。

以上是关于2.2.14内置类与同步:测试1的主要内容,如果未能解决你的问题,请参考以下文章

php 测试同步片段

缺少 SQL SERVER 2014 代码片段

C#-WebForm-★内置对象简介★Request-获取请求对象Response相应请求对象Session全局变量(私有)Cookie全局变量(私有)Application全局公共变量Vi(代码片段

[工作积累] UE4 并行渲染的同步 - Sync between FParallelCommandListSet & FRHICommandListImmediate calls(代码片段

Python 子类跟踪 - 元类与内置

vs 2010代码片段