编程开发之--java多线程学习总结(6)
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)的更多相关文章
- 编程开发之--java多线程学习总结(1)问题引入与概念叙述
1.经典问题,火车站售票,公共票源箱,多个窗口同时取箱中车票销售 package com.lfy.ThreadsSynchronize; /** * 解决办法分析:即我们不能同时让超过两个以上的线程进 ...
- 编程开发之--java多线程学习总结(5)
4.对继承自Runnable的线程进行锁机制的使用 package com.lfy.ThreadsSynchronize; import java.util.concurrent.locks.Lock ...
- 编程开发之--java多线程学习总结(4)
3.使用锁机制lock,unlock package com.lfy.ThreadsSynchronize; import java.util.concurrent.locks.Lock; impor ...
- 编程开发之--java多线程学习总结(2)同步代码块
1.第一种解决办法:同步代码块,关键字synchronized package com.lfy.ThreadsSynchronize; /** * 1.使用同步代码块 * 语法: synchroniz ...
- 编程开发之--java多线程学习总结(3)类锁
2.使用方法同步 package com.lfy.ThreadsSynchronize; /** * 1.使用同步方法 * 语法:即用 synchronized 关键字修饰方法(注意是在1个对象中用锁 ...
- Java多线程学习(转载)
Java多线程学习(转载) 时间:2015-03-14 13:53:14 阅读:137413 评论:4 收藏:3 [点我收藏+] 转载 :http://blog ...
- Java多线程学习(三)volatile关键字
转载请备注地址:https://blog.csdn.net/qq_34337272/article/details/79680693 系列文章传送门: Java多线程学习(一)Java多线程入门 Ja ...
- Java多线程学习(一)Java多线程入门
转载请备注地址:https://blog.csdn.net/qq_34337272/article/details/79640870 系列文章传送门: Java多线程学习(一)Java多线程入门 Ja ...
- 转:Java多线程学习(总结很详细!!!)
Java多线程学习(总结很详细!!!) 此文只能说是java多线程的一个入门,其实Java里头线程完全可以写一本书了,但是如果最基本的你都学掌握好,又怎么能更上一个台阶呢? 本文主要讲java中多线程 ...
随机推荐
- 第七章 资源在Windows编程中的应用 P157 7-8
资源在基于SDK的程序设计中的应用实验 一.实验目的 1.掌握各种资源的应用及资源应用的程序设计方法. 二.实验内容及步骤 实验任务 1.熟悉菜单资源的创建过程: 2.熟悉位图资源的创建: 3.熟 ...
- python性能测试脚本-乾颐堂
废话不多说,直接上代码. import httplib import urllib import time import json class Transaction(object): ...
- 本周MySQL官方verified的bug列表(11月1日至11月7日)
本周MySQL verified的bug列表(11月1日至11月7日) 1.Bug #70839JSON_VALID allows to have two elements with the same ...
- vue项目 一行js代码搞定点击图片放大缩小
一行js代码搞定xue项目需要点击图片放大缩小,其实主要用的是用到了vue:class的动态切换,内容比较简单.一开始我把维护的需求想得太复杂了,和测试小姐姐聊了一下才反应过来. 两个月不到跟了四个项 ...
- SOAP与REST比较(转)
出处:http://xiaobaila.blog.163.com/blog/static/189705129201141965434571/ SOAP与REST比较 如今,Web开发者的可选技术相当之 ...
- deploy: [mkdir] Created dir: C:\Program Files\Java\apache-cxf-2.4.2\samples\java_first_pojo\build [loadfile] Do not set property srcbuild.classpath as its length is 0.
使用CXF的错误,错误是说我的路径有错误,因为路径错误所以无法运行程序 (1)原因,我将其放入了Program Files文件夹下,所以,其不好使 分析原因: 目录路径错误,目录中不能有空格,否则其解 ...
- IntelliJ IDEA 2016.1.3(64) license server 与汉化
license server:http://idea.iteblog.com/key.php 汉化:将resources_cn.jar 复制到安装IDEA安装目录下的lib文件夹中.重新打开即可. r ...
- Android下拉刷新控件android-Ultra-Pull-To-Refresh 使用
一.gitHub地址及介绍 https://github.com/liaohuqiu/android-Ultra-Pull-To-Refresh android-Ultra-Pull-To-Refre ...
- Java Web系列:Spring MVC基础
1.Web MVC基础 MVC的本质是表现层模式,我们以视图模型为中心,将视图和控制器分离出来.就如同分层模式一样,我们以业务逻辑为中心,把表现层和数据访问层代码分离出来是一样的方法.框架只能在技术层 ...
- HTML5、CSS3与响应式Web设计入门(1)
HTML5与CSS3已经当仁不让的成为了这两年Web界最火爆的词,他们似乎在HTML4和CSS2统治了Web很多年之后的某一天突然爆发,然 后一直占据着所有Web开发者的视野.HTML5本身就是一个很 ...