
多线程
Luther-
这个作者很懒,什么都没留下…
展开
-
多线程(1)
1.线程与进程的区别:进程:目前进行中的程序;线程:就是进程一个独立的控制单元;(一个进程至少有一个线程),其实在windows操作系统中,CPU某一时刻只能运行一个程序,但是在多个程序运行的时候,CPU会快速的交替执行,在用户 看来,是多个程序同时运行.java vm 启动的时候会有一个java.exe 进程;java.lang.Thread(API 地址)2.线程的创建原创 2016-05-23 14:03:39 · 229 阅读 · 0 评论 -
多线程(2)
简单的多线程理解,一个简单的购票,创建4个线程,卖5张票.package util;public class Test{public static void main(String[] args) {new Test().new Ticket().start();new Test().new Ticket().start();new Test().new Tic原创 2016-05-23 16:21:44 · 262 阅读 · 0 评论 -
多线程(3)安全性
多线程运行时出现安全性问题:问题原因:当多个线程执行共享数据的时候,其中某一个线程执行一部分,还没有执行完,另一个行程也参与执行,导致共享数据的错误.解决办法:当一个线程执行共享数据的时候,保证当前线程执行完以后,再允许其他线程参与执行.java 对于多线程安全问题提供了专业的解决方式:synchronized(对象){同步代码}做个简单的测试:上篇文章原创 2016-05-24 15:35:37 · 375 阅读 · 0 评论 -
多线程(4)单列模式
单列模式分为两种:饿汉式:package util;public class Single {public static Single s = new Single();private Single(){}public static Single getSingle(){return s; }}懒汉式:package util;原创 2016-05-24 18:50:39 · 316 阅读 · 0 评论 -
多线程(5)等待唤醒机制
多线程的等待唤醒机制:举例转载:小时候,我们都起一玩过一个游戏,名字想不起来了,就是一伙小朋 友,抽出其中最走运的一个,其他的就到处跑,逃离最走运的,规矩:当最走运的小盆友要住抓其他小盆友中的一个时,如果反响的快时,说一声“木(定,就是不能动)”,走运的小盆友就不能抓他,而去抓其他的,只有等到其他的小盆友来碰他(木的那个)一下,才可以被拯救,又当部全木完时,最走运的小盆友就变运幸了,同原创 2016-05-24 19:40:30 · 314 阅读 · 0 评论 -
多线程(6)等待唤醒机制Lock,condition
从JDK1.5 之后,提供新的等待唤醒机制Lock之前用的wait(),notify(),notifyAll(),都是在JDK1.5之前使用,不同的线程在锁住同一个对象后,调用wait()线程等待,notifyAll()唤醒所有的线程池里的线程,但是通常我们不需要唤醒所有的线程,只唤醒我们需要的线程即可,JDK1.5后提供Lock 接口。上一个列子,做了下修改。new Reentr原创 2016-05-26 14:46:10 · 470 阅读 · 0 评论