线程
-
面试官:说一下顺序锁和轮询锁?



,锁(Dead Lock)指的是两个或两个以上的运算单元(进程、线程或协程),都在等待对方停止执行,以取得系统资源,但是没有一方提前退出,就称为死锁。,,死锁示例代码如下:,以上程…
-
提高系统吞吐量,DeferredResult 到底有多强?



大家都知道,Callable和DeferredResult可以用来进行异步请求处理。利用它们,我们可以异步生成返回值,在具体处理的过程中,我们直接在controller中返回相…
-
一种使用字节码增强技术检测线程阻塞的实现方式
在过去处理过的服务故障中,有一类比较典型的场景是业务线程被阻塞(造成阻塞的原因也是多种多样),慢慢导致业务线程池中的全部线程被阻塞,最终造成无法对外提供服务(现象则是CPU、Loa…
-
面试官:如何排查死锁?



死锁(Dead Lock)指的是两个或两个以上的运算单元(进程、线程或协程),都在等待对方停止执行,以取得系统资源,但是没有一方提前退出,就称为死锁。,,接下来,我们先来演示一下 …
-
为什么说IO密集型业务,线程数是CPU数的2倍?
I/O密集型业务,线程数量要设置成 CPU 的 2 倍!,也不知道这是哪本书的坑爹理论,现在总有一些小青年老拿着这样的定理来说教。说的信誓旦旦,毋庸置疑,仿佛是权威的化身。讨论时把…
-
图解 Kafka 源码之 Sender 线程架构设计



,大家好,我是 华仔, 又跟大家见面了。,原文完整版在星球里面,如果感兴趣可以扫文末二维码加入。,上篇主要带大家深度剖析了「号称承载 Kafka 客户端消息快递仓库 Re…
-
HashMap底层实现原理
HashMap采用Node<K,V> 数组来存储key-value对,每一个键值对组成了一个Node实体,Node类实际上是一个单向的链表结 构,它具有Next指针,可…
-
编程中的Java线程池,你了解多少?
Java线程池是Java多线程编程中非常重要的概念,它可以有效地管理线程,提高程序的性能。本文将对Java线程池进行详细的介绍,包括线程池的概念、作用、实现原理以及常见的线程池使用…
-
用这四招优雅地实现 Spring Boot 异步线程间数据传递
Spring Boot 自定义线程池实现异步开发相信看过陈某的文章都了解,但是在实际开发中需要在父子线程之间传递一些数据,比如用户信息,链路信息等等,比如用户登录信息使用Threa…
-
万字图解工作面试必备,Java线程安全问题和解决方案



上一篇介绍了《Java多线程的作用》,使用场景和创建方式等基础,本篇主要介绍:,文章涵盖广而全,对工作和面试都有很大帮助,值得收藏认真阅读,不错的话记得点赞,关注支持哦!,…
-
不规范使用ThreadLocal导致的bug,说多了都是泪



,ThreadLocal一般用于线程间的数据隔离,通过将数据缓存在ThreadLocal中,可以极大的提升性能。但是,如果错误的使用Threadlocal,可能会引起不可预期的bu…
-
ThreadLocal原理详解–面试粉碎机
,void set(Object value),设置当前线程的线程局部变量的值,public Object get(),该方法返回当前线程所对应的线程局部变量,public voi…