Java 多线程进阶 并发数据结构 并发数据结构 常用的数据结构是线程不安全的 ArrayList/HashMap/HashSet 非同步的 多个线程同时独写, 可能会抛出异常或数据错误 传统Vector/HashTable等同步数据集合性能过差 并发数据结构: 数据添加或删除 阻塞式集合: 当集合 ...
分类:
编程语言 时间:
2020-04-20 16:00:58
阅读次数:
66
Executor(1) 从JDK5 开始提供Executor FrameWork(java.util.concurrent.\ ) 分离任务和创建和执行者的创建 线程重复利用(new线程代价很大) 理解 共享线程池 的概念 预设好的多个Thread, 可弹性增加 多次执行很多很小的任务 任务创建和执 ...
分类:
编程语言 时间:
2020-04-18 16:02:01
阅读次数:
86
Java 多线程进阶 并发编程 并行计算 业务: 任务多, 数据量大 串行 vs 并行 串行编程简单, 并行编程困难 单个计算核频率下降, 计算核数增多, 整体性能变高 并行困难(任务分配和执行过程 高度耦合 ) 如何控制粒度, 切割任务 如何分配任务给线程, 监督线程执行过程 并行模式 主从模式( ...
分类:
编程语言 时间:
2020-04-18 15:33:58
阅读次数:
89
1、多线程有什么用? 一个可能在很多人看来很扯淡的一个问题:我会用多线程就好了,还管它有什么用?在我看来,这个回答更扯淡。所谓"知其然知其所以然","会用"只是"知其然","为什么用"才是"知其所以然",只有达到"知其然知其所以然"的程度才可以说是把一个知识点运用自如。OK,下面说说我对这个问题的看 ...
分类:
编程语言 时间:
2020-04-18 10:06:15
阅读次数:
69
多线程· Runnable 和 Thread 多线程的引入 * A:什么是线程 * 线程是程序执行的一条路径,一个进程中可以包含多条线程 * 多线程并发执行可以提高程序的效率,可以同时完成多项工作 * B:多线程的应用场景 * 红蜘蛛同时共享屏幕给多个电脑 * 迅雷开启多条线程一起下载 * QQ同时 ...
分类:
编程语言 时间:
2020-04-17 20:13:01
阅读次数:
84
BUAA_OO_2020_Unit2_Summary 简述 通过Unit2的学习,我了解到Java多线程的相关知识,认识到单例模式、生产者 消费者模式、观察者模式、工人模式等设计模式,并通过设计基于SSTF算法的电梯加深对多线程知识的理解,同时将一部分设计模式加以应用。本博文从设计策略概述、架构可扩 ...
分类:
其他好文 时间:
2020-04-17 09:52:41
阅读次数:
84
1.阿里巴巴java规约推荐使用java线程池ThreadPoolExecutor service = new ThreadPoolExecutor(5, 200, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<>(1024), new Thr ...
分类:
编程语言 时间:
2020-04-16 19:43:46
阅读次数:
80
导读:很多优秀的高级框架都是通过反射完成的,反射的重要性,由此可见一斑。反射机制可以使得程序更加灵活,只有学习好反射的基础语法,这样才能自己写出优秀的框架。好了一起打卡学习吧,别忘记了素质三连哦! 往期精彩回放:一文搞定Java的输入输出流等常见流 java多线程编程从入门到卓越(超详细总结) 一文 ...
分类:
编程语言 时间:
2020-04-14 16:54:36
阅读次数:
90
?123456789101112131415161718192021222324252627282930313233343536373839404142434445import java.util.concurrent.Callable;import java.util.concurrent.Exe ...
分类:
编程语言 时间:
2020-04-13 00:44:54
阅读次数:
82
1.java多线程 1.1--java多线程通信? 多线程并发编程时,难免会遇到线程间的通信问题。线程通信方式的思想大体上来说可以分为两种:共享和传递。 共享的实现方式可以是共享变量、共享文件、数据库、网络等。传递的实现方式可以是消息队列、生产者-消费者模型等。 (1)共享变量: 使用volatil ...
分类:
编程语言 时间:
2020-04-12 14:30:23
阅读次数:
68