JUC
文章平均质量分 71
恩洛
这个作者很懒,什么都没留下…
展开
-
线程池注入
@Configurationpublic class BeanConfig { /** Set the ThreadPoolExecutor's core pool size. */ private int corePoolSize = 3; /** Set the ThreadPoolExecutor's maximum pool size. */ private int maximumPoolSize = 3; /** Set the capacity for the ThreadPool原创 2021-03-02 17:18:04 · 364 阅读 · 0 评论 -
JUC并发编程04
21、锁公平锁,非公平锁 默认非公平锁可重入锁(递归锁)Synchronizedpublic class ReentrantLockDemo { public static void main(String[] args) { Phone phone = new Phone(); new Thread(()->{phone.sent();}).start(); new Thread(()->{phone.sent();}).start(); }}class Phone原创 2021-02-25 00:33:01 · 103 阅读 · 0 评论 -
JUC并发编程03
14、ForkJoinForkjoin:**特点:**工作窃取15、Future16、JMM(Java Memory Model)Java内存模型1、Java内存模型规定所有的变量都存储在主内存中,包括实例变量,静态变量,不包括局部变量和方法参数。2、每个线程有自己的工作内存,线程的工作内存保存了该线程用到的变量和主内存的副本拷贝,线程对变量的操作都在工作内存中进行,线程不能直接读写主内存中的变量。3、不同的线程之间也无法访问对方工作内存中的变量,线程之间变量值的传递均需要通过主内存来完成。原创 2021-02-24 17:46:06 · 151 阅读 · 1 评论 -
JUC并发编程02
7、Callable可以有fanhuiz可以抛出异常方法不同,run()/call()示例public class Callabletest { public static void main(String[] args) throws InterruptedException, ExecutionException { // new Thread(new Runable()).strat; // new Thread(new FutureTask<V>()).start原创 2021-02-23 13:31:17 · 179 阅读 · 1 评论 -
JUC并发编程01
1、JUC(Java.util.concurrent)2、线程和进程一个进程往往包含多个线程,至少包含一个;java默认有两个线程? main;GC线程:并发和并行并发:并行:并发编程的本质:充分利用CPU的资源原创 2021-02-22 01:23:38 · 98 阅读 · 0 评论