并发编程
bruce_xia6116
这个作者很懒,什么都没留下…
展开
-
深入理解锁,同步器以及线程池
ThreadPoolExecutor线程池中线程不能超过核心线程数量的问题 int arg1=2;//核心线程 int arg2=40;//最大线程数量 int arg3=100;//空余保留时间 ThreadPoolExecutor pool=new ThreadPoolExecutor(arg1, arg2, arg3,TimeUnit.MILLISE...原创 2019-08-08 21:27:20 · 274 阅读 · 0 评论 -
ThreadLocal-深度剖析
ThreadLocal-深度解析ThreadLocal-基本概念 ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。当使用ThreadLocal维护变量时,ThreadLocal为每个使用该变量的线程提供独立的变量副本,所以每一个线程都可以独立地改变自己的副本,而不会影响其它线程所对应的副本。从线程的角度看,目标变量就象是线程的本地变量,这也是类名中“Local”所要表...原创 2019-08-08 21:30:03 · 253 阅读 · 0 评论 -
线程通信(调用)之wait\notify,sleep,join
文章目录线程间通信等待/通知机制等待/通知机制的实现(wait/notify)join方法类ThreadLocal的使用sleep()与wait()的区别sleep()与 yield()的区别join方法结论线程间通信线程是操作系统中独立的个体,但这些个体如果不经过特殊的处理就不能成为一个整体。线程间的通信就是成为整体的必用方案之一,可以说,使线程间进行通信后,系统之间的交互性会更强大,在大大...原创 2019-08-22 10:29:39 · 519 阅读 · 0 评论 -
多种方法实现两个线程交替打印奇偶数
交替打印奇偶数问题描述: 构造两个线程,交替打印1-100之间的数字,其中线程1打印奇数,线程2打印偶数。 方式1:采用synchronized同步锁和wait,notify线程通信机制来实现。public class jiaotidayinshuzi { public static void main(String[] args){ PrintNum p...原创 2019-08-26 17:11:32 · 3107 阅读 · 0 评论 -
java中线程的生命周期及对应的5种状态
文章目录java中线程生命周期大致分为5个状态初始状态可运行状态运行状态死亡状态阻塞状态等待队列锁池状态几个方法的比较java中线程生命周期大致分为5个状态新建(NEW):新创建了一个线程对象。可运行(RUNNABLE):线程对象创建后,其他线程(比如main线程)调用了该对象的start()方法。该状态的线程位于可运行线程池中,等待被线程调度选中,获取cpu 的使用权 。运行(RUN...原创 2019-08-29 08:53:07 · 802 阅读 · 0 评论