- 博客(7)
- 收藏
- 关注
原创 《Java并发编程心得》第一章:线程&& 线程池(1.4 Runable、Callable、Future三者的差异?如何获取线程的返回值?)
如何获取线程的返回值概述获取值的多种方式传递入参、出参利用线程池获取返回值Future和Callable的差异UML图概述很多场景下,我们需要线程的返回值来进行下一步操作,那么究竟怎么来获取么?在这里,提供了集中常用的方式以供参考。获取值的多种方式传递入参、出参public class MyRunable implements Runnable { private Stri...
2019-11-03 21:05:13 267
原创 《Java并发编程心得》第一章:线程&& 线程池(1.3 如何创建线程池?线程池核心参数详解)
创建线程池的几种方式&& 核心参数详解概述Executor及常见子类UML图核心参数详解int corePoolSizeint maximumPoolSizelong keepAliveTimeTimeUnit unitBlockingQueue workQueueThreadFactory threadFactoryRejectedExecutionHandler handler...
2019-11-03 19:51:41 287
原创 《Java并发编程心得》第一章:线程&& 线程池(1.2 线程的生命周期)
线程的生命周期概述创建就绪运行阻塞死亡概述线程的生命周期基本可以分为:创建、就绪、运行、阻塞、死亡五个状态;创建当new一个Thread对象时,此对象便自然处于创建状态。 此时的Thread对象和普通对象没有任何区别,仅由JVM为此对象分配了基本的对象资源(分配堆空间,初始化其成员变量)就绪当调用Thread对象的start方法时,线程处于就绪状态。此时线程对象已经由系统创建了线程私...
2019-11-03 17:51:52 250
原创 《Java并发编程心得》第一章:线程&& 线程池(1.1 如何创建线程?)
线程创建方式如何创建线程?继承Thread类实现Runable接口使用lambda表达式简化写法run方法和start方法的差异如何创建线程?创建线程主要有两种方式继承Thread类、实现Runable接口两种方式。通过查看Thread类的构造方法可知继承Thread类public class MyThread extends Thread { @Override pu...
2019-11-03 16:42:16 200
原创 用AsyncEventBus实现单机的异步消息队列
背景与主链路无关的其它操作关键类,代码举例Event:事件主体,提交和消费的数据载体@Data@AllArgsConstructorpublic class MyEvent { private String name; private Integer age;}Listener:消费者,实际消费Event的地方实现EventListener接口接收到...
2019-10-11 01:21:42 1249
原创 使用List切割数组,抛出java.util.ConcurrentModificationException异常分析
L欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器...
2019-10-01 21:03:32 980
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人