/** 题目:判断打印的 "one" or "two" ?* * 1. 两个普通同步方法,两个线程,标准打印, 打印? //one  two* 2. 新增 Thread.sleep() 给 getOne() ,打印? //one  two* 3. 新增普通方法 getThree() , 打印? //three  one   two* 4. 两个普通同步方法,两个 Number 对象,打印?  //two  one* 5. 修改 getOne() 为静态同步方法,打印?  //two   one* 6. 修改两个方法均为静态同步方法,一个 Number 对象?  //one   two* 7. 一个静态同步方法,一个非静态同步方法,两个 Number 对象?  //two  one* 8. 两个静态同步方法,两个 Number 对象?   //one  two* * 线程八锁的关键:* ①非静态方法的锁默认为  this,  静态方法的锁为 对应的 Class 实例* ②某一个时刻内,只能有一个线程持有锁,无论几个方法。*/
public class TestThread8Monitor {public static void main(String[] args) {Number number = new Number();Number number2 = new Number();new Thread(new Runnable() {@Overridepublic void run() {number.getOne();} }).start();new Thread(new Runnable() {@Overridepublic void run() {
//                number.getTwo();
                number2.getTwo();}}).start();/*new Thread(new Runnable() {@Overridepublic void run() {number.getThree();}}).start();*/}}class Number{public static synchronized void getOne(){//Number.classtry {Thread.sleep(3000);} catch (InterruptedException e) {}System.out.println("one");}public synchronized void getTwo(){//thisSystem.out.println("two");}public void getThree(){System.out.println("three");}}

转载于:https://www.cnblogs.com/surge/p/10476285.html

GUC-10 线程八锁相关推荐

  1. Java线程-线程八锁

    synchronized在方法上加锁 加在非静态方法上.锁住的是this对象 class Test{public synchronized void test(){}} 等价于 class Test{ ...

  2. 线程八锁,同步锁的应用

    锁的八种情况的应用 package com.debuggg.test1.main2; /*** 作者 ZYL* 功能描述 : 题目:判断打印的是"one"or "two& ...

  3. 通过线程八锁问题融会贯通synchronized关键字的使用

    文章目录 1. 一锁 2. 二锁 3. 三锁 4. 四锁 5. 五锁 6. 六锁 7. 七锁 8. 八锁 线程八锁 凯有八门遁甲之术,你晓得线程八锁问题吗?赶紧来看一下吧~ 1. 一锁 class N ...

  4. JVM:高效并发机制——内存模型、线程、锁

    为什么要进行并发(多任务处理) 处理器能力很强,尽可能压榨其劳动力 处理器处理速度与存储和通信速度相差甚大(IO.网络通信.数据库访问非常耗时),使得处理器总处在等待的状态,浪费计算资源 物理机提高处 ...

  5. 【java线程】锁机制:synchronized、Lock、Condition

    [Java线程]锁机制:synchronized.Lock.Condition 原创 2013年08月14日 17:15:55 标签:Java /多线程 74967 http://www.infoq. ...

  6. 七周七并发之线程与锁

    2019独角兽企业重金招聘Python工程师标准>>> 七周七并发之线程与锁 博客分类: java 1.概述 1.1并发还是并行(Concurrent or Parallel) A ...

  7. python线程同步锁_Python实现的多线程同步与互斥锁功能示例

    本文实例讲述了Python实现的多线程同步与互斥锁功能.分享给大家供大家参考,具体如下: #! /usr/bin/env python #coding=utf-8 import threading i ...

  8. Java并发编程-八锁问题带你彻底理解对象锁和类锁

    八锁问题带你理解对象锁和类锁 8锁问题演示 1.标准访问 2.在邮件方法中暂停4秒,请问先打印邮件还是短信 3.新增普通sayHello方法,请问先打印邮件还是hello 4.两部手机,请问先打印邮件 ...

  9. python守护线程_Python之守护线程与锁

    # 守护线程随着子线程结束而结束,与守护进程不一样--守护进程随着主进程代码执行完毕而结束 # from threading import Thread # import time # # def f ...

最新文章

  1. mysql 修改某字段的格式为 utf8mb4
  2. pyqt根据名字获取控件
  3. x5675相当于e5_如何辨别电商电脑主机是否二手翻新硬件?揭秘i7级E5电脑主机猫腻...
  4. 修改Intelij IDEA的maven下载地址为国内阿里云镜像
  5. wxWidgets:使用自定义对话框
  6. c语言for循环运行格式,关于for循环的格式
  7. ai中如何插入签名_技巧不求人167期 Excel如何打印到1页纸的2种方法 Excel如何插入手写签名...
  8. 用php模拟斗地主发牌,php模拟实现斗地主发牌
  9. 二进制安装kubernetes v1.11.2 (第八章 kube-apiserver 部署)
  10. 判断输入的字符串是否为回文_刷题之路(九)--判断数字是否回文
  11. 杨辉三角python_Python面试150题汇总,都是常问的面试题!
  12. 使用正则表达是搜索多个字符串,表达式中加入变量
  13. 今天来谈谈内容溢出和文字溢出的问题
  14. GDALSetProjection使用的一个注意事项
  15. selenium+python自动化测试系列(二):AutoIt工具实现本地文件上传
  16. ATtiny85简单引脚配置
  17. buctoj2021年ACM竞赛班训练(四)全题解
  18. 网络百科——网络接口卡
  19. Image data of dtype object cannot be converted to float 问题解决
  20. Kindle:电子书资源

热门文章

  1. CB2-2CARD的openSUSE安装NAS环境配置
  2. 5G网络逐渐普及TSINGSEE青犀视频云边端架构网页视频实时互动直播系统又将如何发展?
  3. O-1 4GB+的ISO镜像刻录
  4. 【优秀课设】基于OpenCV-Python的树莓派人脸识别及89C52单片机控制系统设计(指定照片进行识别、遍历目录下所有照片依次识别)
  5. HTML格式化是什么?
  6. 原生table-多级表头【广度优先实现】
  7. 研发效能度量实践之有赞篇
  8. Android Custom
  9. 模型泛化技巧“随机权重平均(Stochastic Weight Averaging, SWA)”介绍与Pytorch Lightning的SWA实现讲解
  10. 【Java】关于编程环境