随笔分类 -  Java并发编程

摘要:今天在创建简单线程池时,使用 Runtime.getRuntime().availableProcessors() 有些不懂网上这么配置的理由,百度说是计算资源(逻辑核心数)与 CPU 有关,但是和 CPU 具体啥关系还是一知半解,今天通过看资料,整理一下我的理解。 import com.googl 阅读全文
posted @ 2024-05-20 11:17 菜鸟的奋斗之路 阅读(104) 评论(0) 推荐(0) 编辑
摘要:一、CountDownLatch 初始 CountDownLatch 中 count down 是倒数的意思,latch 则是门闩的含义。整体含义可以理解为倒数的门栓,似乎有一点“三二一,芝麻开门”的感觉。CountDownLatch 的作用也是如此,在构造 CountDownLatch 的时候需要 阅读全文
posted @ 2022-05-14 15:14 菜鸟的奋斗之路 阅读(6502) 评论(0) 推荐(2) 编辑
摘要:1 什么是网络编程 网络编程的本质就是两个设备之间的数据交换,当然在计算机网络中,设备主要指计算机。数据传递本身没有多大的难度,就是把一个设备中的数据发送给另外一个设备。 现在的网络编程基本上都是基于请求 / 响应方式的,也就是一个设备发送请求数据给另外一个,然后接受另一个设备的反馈。 在网络编程中 阅读全文
posted @ 2021-04-30 13:53 菜鸟的奋斗之路 阅读(107) 评论(0) 推荐(0) 编辑
摘要:每逢面试都会询问道线程池的概念和使用,但是工作中真正的又有多少场景使用呢?相信大家都会有这样的疑问:面试选拔造汽车,实际进公司就是拧螺丝!但是真正要把这颗螺丝拧紧,拧牢,没有这些最底层的知识做铺垫你可以吗?你能胜任吗?所以嘛,公司招聘还是有一些尺度和标准的,大家学好技术才是硬道理。好啦,接下来我们就 阅读全文
posted @ 2020-04-04 10:50 菜鸟的奋斗之路 阅读(270) 评论(0) 推荐(0) 编辑
摘要:核心线程池的内部实现 依然参考 JDK 对线程池的支持,各个接口、相关类之间的关系: (1)对于Executors中几个创建线程池方法底层实现: // 创建固定线程数量的线程池 public static ExecutorService newFixedThreadPool(int nThreads 阅读全文
posted @ 2020-04-04 10:48 菜鸟的奋斗之路 阅读(216) 评论(0) 推荐(0) 编辑
摘要:Java并发编程 - Runnbale、Future、Callable 你不知道的那点事(一)大致说明了一下 Runnable、Future、Callable 接口之间的关系,也说明了一些内部常用的方法的含义,那具体内部怎么实现的呢?JDK内部底层源码怎么解读?我就带领大家一一探个究竟。 一、Exe 阅读全文
posted @ 2020-04-03 14:49 菜鸟的奋斗之路 阅读(364) 评论(0) 推荐(0) 编辑
摘要:从事Java开发已经快两年了,都说Java并发编程比较难,比较重要,关键面试必问,但是在我的日常开发过程中,还真的没有过多的用到过并发编程;这不疫情嘛,周末不能瞎逛,就看看师傅们常说的 Runnable 线程执行没有返回值,Future、Callable 线程执行有返回值,咱们今天看看是怎么一回事, 阅读全文
posted @ 2020-04-03 11:12 菜鸟的奋斗之路 阅读(349) 评论(0) 推荐(0) 编辑
摘要:转发链接:https://www.cnblogs.com/dolphin0520/p/3933551.html 在前面一篇文章中提到,对Vector、ArrayList在迭代的时候如果同时对其进行修改就会抛出java.util.ConcurrentModificationException异常。下面 阅读全文
posted @ 2019-02-02 09:24 菜鸟的奋斗之路 阅读(193) 评论(0) 推荐(0) 编辑
摘要:多线程同时访问一个Integer加锁的问题,程序运行和想要的结果相差甚远,让我百思不得其解,就下来研究了一下: 在进行多线程同步时,加锁是保证线程安全的重要手段之一。synchronized是大多数程序员必须要掌握的同步锁,但是这个问题非常的隐晦,大家可以参考一下: 程序运行结果: 注意:结果和我们 阅读全文
posted @ 2018-11-27 18:36 菜鸟的奋斗之路 阅读(417) 评论(0) 推荐(0) 编辑