- 博客(4)
- 收藏
- 关注
转载 java线程池实现原理
出处:https://blog.csdn.net/hzw19920329/article/details/52372348问题一:线程池存在哪些状态,这些状态之间是如何进行切换的呢?查看ThreadPoolExecutor源码便知晓:[java] view plain copy// runState is stored in the high-order bits private stat...
2018-04-18 14:55:09 457
转载 volatile关键字
一、Java内存模型想要理解volatile为什么能确保可见性,就要先理解Java中的内存模型是什么样的。Java内存模型规定了所有的变量都存储在主内存中。每条线程中还有自己的工作内存,线程的工作内存中保存了被该线程所使用到的变量(这些变量是从主内存中拷贝而来)。线程对变量的所有操作(读取,赋值)都必须在工作内存中进行。不同线程之间也无法直接访问对方工作内存中的变量,线程间变量值的传递均需要通过主...
2018-04-17 23:24:39 142
转载 Java 四种线程池newCachedThreadPool,newFixedThreadPool,newScheduledThreadPool,newSingleThreadExecutor
原文出处:https://www.cnblogs.com/zhujiabin/p/5404771.html介绍new Thread的弊端及Java四种线程池的使用,对Android同样适用。本文是基础篇,后面会分享下线程池一些高级功能。1、new Thread的弊端执行一个异步任务你还只是如下new Thread吗?new Thread(new Runnable() { @Override p...
2018-04-17 11:34:59 273
原创 sleep wait yield join notify notifyAll
1.sleep:会让当前线程休眠进入阻塞状态并释放CPU,并不会释放锁,即使是睡眠也抱着锁不让别人访问。不推 荐使用。 sleep(long):Thread类的静态方法,必须带一个时间参数,在指定时间肯定不会被执行,让当前 运 行的程序睡眠一会,即让线程从运行状态进入阻塞状态,只有等阻塞时间过后才进入就绪状态,并不是 直接进入运行状态,是否进入运行状态就要...
2018-04-17 00:20:58 173
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人