
java多线程
yanghuiysz
这个作者很懒,什么都没留下…
展开
-
生产者-消费者
在学习java 的多线程中,生产者和消费者的问题是最经典的问题,因此在学习了java的多线程后 本文假设的是只有一个篮子、一个生产者和消费者首先需要创建一个类Apple(苹果)的类,这个类是产品。//创建一个苹果类,作为产品public class Appple{ private int i; public Appple(int i){ this.i=i;原创 2016-06-13 20:14:33 · 313 阅读 · 0 评论 -
java多线程:循环输出ABC
java多线程的经典问题: 问题:有A,B,C三个线程, A线程输出A, B线程输出B, C线程输出C,要求, 同时启动三个线程, 按顺序输出ABC, 循环10次。首先写出测试类public class Main { public static void main(String[] args) throws Exception{ Object a=new Object()原创 2016-06-13 21:53:10 · 7105 阅读 · 0 评论 -
线程volatile
最近学习了多线程操作中的volatile关键字1. 内存模型 大家都知道,计算机在执行程序时,每条指令都是在CPU中执行的,而执行指令过程中,势必涉及到数据的读取和写入。由于程序运行过程中的临时数据是存放在主存(物理内存)当中的,这时就存在一个问题,由于CPU执行速度很快,而从内存读取数据和向内存写入数据的过程跟CPU执行指令的速度比起来要慢的多,因此如果任何时候对数据的操作都要通过和内存的交原创 2016-06-28 20:03:29 · 297 阅读 · 0 评论 -
线程的yield方法和jion方法
yield()方法线程的yield方法:让当前运行线程回到可运行状态,以允许具有相同优先级的其他线程获得运行机会。因此,使用yield()的目的是让相同优先级的线程之间能适当的轮转执行。但是,实际中无法保证yield()达到让步目的,因为让步的线程还有可能被线程调度程序再次选中。jion()方法 阻塞所在线程,等调用它的线程执行完毕,再向下执行。原创 2016-07-28 14:29:08 · 584 阅读 · 0 评论 -
多线程——死锁的例子
在面试的过程中可能会要求写出一个死锁的例子:public class Lock implements Runnable{ public static Object o1=new Object(); public static Object o2=new Object(); int flage; public Lock(int flage){ this.原创 2016-07-28 14:50:59 · 608 阅读 · 0 评论