最新 最热

Java 多线程系列Ⅱ

在多线程环境中,线程安全是确保程序正确性的关键因素。Java作为一种广泛使用的编程语言,其线程安全的概念、策略和案例分析对于开发人员来说至关重要。...

2024-01-30
1

干掉Druid,HakariCP 为什么这么快?

Springboot 2.0将 HikariCP 作为默认数据库连接池这一事件之后,HikariCP 作为一个后起之秀出现在大众的视野中。HikariCP 是在日本的程序员开源的,hikari日语意思为“光”,HikariCP 也以速度快的特点受到越来越多人的青...

2024-01-29
0

快过年了,又该复习线程池了

线程池中是以⽣产者消费者模式,通过⼀个阻塞队列来实现的,阻塞队列缓存任务,⼯作线程从阻塞队列中获取任务。

2024-01-26
1

golang 实现协程池

go 的 goroutine 提供了一种比线程而言更廉价的方式处理并发场景。相比线程,协程占据更小的内存空间,并且由于是在用户态进行调度,上下文切换的代价更小。所以协程更加容易支撑几万几百万的并发。但 goroutine 太多仍会...

2024-01-25
1

100% 弄明白Java NIO

Java NIO是为了解决高并发请求提出的设计模型,是基于IO多路复用设计出来的。底层又依赖于操作系统的支持(select、poll、epoll)。

2024-01-25
1

【JUC基础】17. 并发编程常见问题

多线程固然可以提升系统的吞吐量,也可以最大化利用系统资源,提升相应速度。但同时也提高了编程的复杂性,也提升了程序调试的门槛。今天就来汇总一些常见的并发编程中的问题。...

2024-01-25
1

【JUC进阶】14. TransmittableThreadLocal

书接上回《【JUC进阶】13. InheritableThreadLocal》,提到了InheritableThreadLocal虽然能进行父子线程的值传递,但是如果在线程池中,就无法达到预期的效果了。为了更好的解决该问题,TransmittableThreadLocal诞生了。...

2024-01-25
1

log4j统一记录短信操作日志(入库)

MDC(Mapped Diagnostic Context,映射调试上下文)是 log4j 和 logback 提供的一种方便在多线程条件下记录日志的功能。某些应用程序采用多线程的方式来处理多个用户的请求。在一个用户的使用过程中,可能有多个不同的线程来...

2024-01-25
1

【JUC进阶】11. BlockingQueue

对于并发程序而言,高性能自然是一个我们需要追求的目标,但多线程的开发模式还会引入一个问题,那就是如何进行多个线程间的数据交换和共享呢?而JUC库中提供了多种并发队列和环形缓冲区的实现,为我们提供了高性能和线程安全...

2024-01-25
1

【JUC进阶】05. 偏向锁

偏向锁是Java并发编程中一种重要的锁机制,它针对特定的线程进行优化,从而提高了并发性能。这种锁机制在多线程场景下非常常见,特别适用于一些读写分离的应用场景。...

2024-01-25
0