5、测试

package com.lfy.ThreadsSynchronize;

public class Test {

    public static void main(String[] args) {

        //创建 3 个窗口
// TicketSell1 t1 = new TicketSell1("A窗口");
// TicketSell1 t2 = new TicketSell1("B窗口");
// TicketSell1 t3 = new TicketSell1("C窗口");
// t1.start();
// t2.start();
// t3.start();
/**==================1、使用同步代码块解决=====================*/
// TicketSellSolution1 t1 = new TicketSellSolution1("A窗口");
// TicketSellSolution1 t2 = new TicketSellSolution1("B窗口");
// TicketSellSolution1 t3 = new TicketSellSolution1("C窗口");
// t1.start();
// t2.start();
// t3.start();
/**==================2、使用同步方法(貌似同步方法不能解决同步问题)=====================*/
// TicketSellSolution2 t1 = new TicketSellSolution2("A窗口");
// TicketSellSolution2 t2 = new TicketSellSolution2("B窗口");
// TicketSellSolution2 t3 = new TicketSellSolution2("C窗口");
// t1.start();
// t2.start();
// t3.start();
/**==================3、使用锁机制(貌似同步方法不能解决同步问题)=====================*/
// TicketSellSolution3 t1 = new TicketSellSolution3("A窗口");
// TicketSellSolution3 t2 = new TicketSellSolution3("B窗口");
// TicketSellSolution3 t3 = new TicketSellSolution3("C窗口");
// t1.start();
// t2.start();
// t3.start();
/**==================3、使用锁机制(貌似同步方法不能解决同步问题)=====================*/
// Thread t1 = new Thread(new TicketSellSolution4());
// Thread t2 = new Thread(new TicketSellSolution4());
// Thread t3 = new Thread(new TicketSellSolution4());
// t1.start();
// t2.start();
// t3.start();
} }

部分内容参考自网络:http://www.cnblogs.com/handsomeye/p/5999362.html

http://www.cnblogs.com/dolphin0520/p/3923167.html

http://www.cnblogs.com/handsomeye/p/5999362.html

编程开发之--java多线程学习总结(6)的更多相关文章

  1. 编程开发之--java多线程学习总结(1)问题引入与概念叙述

    1.经典问题,火车站售票,公共票源箱,多个窗口同时取箱中车票销售 package com.lfy.ThreadsSynchronize; /** * 解决办法分析:即我们不能同时让超过两个以上的线程进 ...

  2. 编程开发之--java多线程学习总结(5)

    4.对继承自Runnable的线程进行锁机制的使用 package com.lfy.ThreadsSynchronize; import java.util.concurrent.locks.Lock ...

  3. 编程开发之--java多线程学习总结(4)

    3.使用锁机制lock,unlock package com.lfy.ThreadsSynchronize; import java.util.concurrent.locks.Lock; impor ...

  4. 编程开发之--java多线程学习总结(2)同步代码块

    1.第一种解决办法:同步代码块,关键字synchronized package com.lfy.ThreadsSynchronize; /** * 1.使用同步代码块 * 语法: synchroniz ...

  5. 编程开发之--java多线程学习总结(3)类锁

    2.使用方法同步 package com.lfy.ThreadsSynchronize; /** * 1.使用同步方法 * 语法:即用 synchronized 关键字修饰方法(注意是在1个对象中用锁 ...

  6. Java多线程学习(转载)

    Java多线程学习(转载) 时间:2015-03-14 13:53:14      阅读:137413      评论:4      收藏:3      [点我收藏+] 转载 :http://blog ...

  7. Java多线程学习(三)volatile关键字

    转载请备注地址:https://blog.csdn.net/qq_34337272/article/details/79680693 系列文章传送门: Java多线程学习(一)Java多线程入门 Ja ...

  8. Java多线程学习(一)Java多线程入门

    转载请备注地址:https://blog.csdn.net/qq_34337272/article/details/79640870 系列文章传送门: Java多线程学习(一)Java多线程入门 Ja ...

  9. 转:Java多线程学习(总结很详细!!!)

    Java多线程学习(总结很详细!!!) 此文只能说是java多线程的一个入门,其实Java里头线程完全可以写一本书了,但是如果最基本的你都学掌握好,又怎么能更上一个台阶呢? 本文主要讲java中多线程 ...

随机推荐

  1. windows cmake安装

    https://blog.csdn.net/u013832707/article/details/53127710

  2. sql查询磁盘空间并发预警邮件

    检测磁盘空间,如果低于设置的预警值则发出一封预警邮件,这样的事情可以用SQL server的作业可以做,关键SQL语句如下例子所示: DECLARE @TableText NVARCHAR(MAX)= ...

  3. Word直接发布新浪博客(以Word 2010为例)

    目前大部分的博客作者在用Word写博客这件事情上都会遇到以下3个痛点: 1.所有博客平台关闭了文档发布接口,用户无法使用Word,Windows Live Writer等工具来发布博客.使用Word写 ...

  4. Hadoop-2.7.2分布式安装手册

    目录 目录 1 1. 前言 3 2. 特性介绍 3 3. 部署 5 3.1. 机器列表 5 3.2. 主机名 5 3.2.1. 临时修改主机名 6 3.2.2. 永久修改主机名 6 3.3. 免密码登 ...

  5. java并发编程实战:第十章----避免活跃性危险

    在安全性和活跃性之间通常存在着某种制衡 一.死锁 定义:在线程A持有锁L并想获得锁M的同时,线程B持有锁M并尝试获得锁L,线程AB均不会释放自己的锁,那么这两个线程将永远地等待下去 在数据库系统的设中 ...

  6. Intel Cyclone SoC FPGA介绍

    3.1 Intel Cyclone SoC FPGA介绍 3.1.1 SoC FPGA的基本概念 Intel Cyclone V SoC FPGA是Intel PSG(原Altera)于2013年发布 ...

  7. Struts+Spring+Hibernate整合

    这段笔记三两年前写的,一直因为一些琐事,或者搞忘记了,没有发.今天偶然翻出了它,就和大家一起分享下吧. 1.导入jar包 Struts的jar包: Spring的jar包: Hibernate的jar ...

  8. [label][Google-Developers] Your First Multi Screen Site

    内容是任何网站最重要的部分. 所以,让我们为内容而设计,而不要让设计支配内容. 1. 首先确定我们需要的内容: 2. 基于这个内容,为无论宽.窄的 viewport 创建一个页面结构: 3. 然后在简 ...

  9. Android-DateTimeAndroidUtil-工具类

    DateTimeAndroidUtil-工具类 是关于时间日前相关的公用方法: package liudeli.mynetwork01.utils; import android.util.Log; ...

  10. ASP.NET Core2实现静默获取微信公众号的用户OpenId

    最近在做个微信公众号的项目,需要将入口放置在公众号二级菜单内,通过点击该菜单链接后进入到该项目中去,进入到项目后程序会自动通过微信公众号的API完成用户的OpenId获取.需求很简单,实现起来也不复杂 ...