java多线程及高并发
文章平均质量分 69
Master_Shifu_
这个作者很懒,什么都没留下…
展开
-
websocket多线程发送消息报错TEXT_PARTIAL_WRITING--自旋锁替换synchronized独占锁的使用案例
websocket多线程发送消息报错TEXT_PARTIAL_WRITING--自旋锁替换synchronized独占锁的使用案例原创 2022-07-27 11:21:23 · 3291 阅读 · 3 评论 -
Java并发编程--公平锁的实现和使用案例
Java并发编程--公平锁的实现和使用案例转载 2022-07-27 10:23:30 · 632 阅读 · 0 评论 -
Java并发编程--自旋锁的实现和使用
Java并发编程--自旋锁的实现和使用转载 2022-07-27 10:40:33 · 2368 阅读 · 0 评论 -
自旋锁跟轻量级锁的关系
自旋锁是为了减少线程挂起次数;而轻量级锁是在加锁的时候,如何使用一种更高效的方式来加锁。1.先解释自旋锁:未使用自旋锁的线程状态:运行 -》 阻塞 -》 运行 被挂起被唤醒使用自旋锁线程状态:运行 -》 运行 -》 运行自旋等待锁被释放第一种方式线程会被挂起和恢复,而第二种线程一直处于运行状态,因此自旋锁高效很多!2.重量级锁加锁方式:monitorenter -> 执行同步代码块 -》 monitorexit3.轻量级锁加锁方式:CAS(设置对象头轻量级锁原创 2021-10-21 19:00:58 · 907 阅读 · 0 评论 -
java8多线程异步调用 CompletableFuture 详解
CompletableFuture 详解CompletableFuture类实现了CompletionStage和Future接口。Future是Java 5添加的类,用来描述一个异步计算的结果,但是获取一个结果时方法较少,要么通过轮询isDone,确认完成后,调用get()获取值,要么调用get()设置一个超时时间。但是这个get()方法会阻塞住调用线程,这种阻塞的方式显然和我们的异步编程的初...转载 2019-02-16 10:51:45 · 2038 阅读 · 0 评论 -
[译]20个使用 Java CompletableFuture的例子
在Java中异步编程,不一定非要使用rxJava, Java本身的库中的CompletableFuture可以很好的应对大部分的场景。原文: 20 Examples of Using Java’s CompletableFuture, 作者 Mahmoud Anouti。这篇文章介绍 Java 8 的 CompletionStage API和它的标准库的实现 CompletableFuture...转载 2019-02-16 11:10:11 · 420 阅读 · 0 评论 -
Java多线程-工具篇-BlockingQueue
1.前言:在新增的Concurrent包中,BlockingQueue很好的解决了多线程中,如何高效安全“传输”数据的问题。通过这些高效并且线程安全的队列类,为我们快速搭建高质量的多线程程序带来极大的便利。本文详细介绍了BlockingQueue家庭中的所有成员,包括他们各自的功能以及常见使用场景。2.认识BlockingQueue阻塞队列,顾名思义,首先它是一个队列,而一个队列在数据结构中...转载 2019-02-16 11:44:21 · 164 阅读 · 0 评论 -
JAVA生产者与消费者模式 BlockingQueue与ExecutorService实例
1.首先创建生产者:package ProducerAndConsumer; import java.util.Random;import java.util.concurrent.BlockingQueue;import java.util.concurrent.TimeUnit;import java.util.concurrent.atomic.AtomicInteger; ...转载 2019-02-16 11:52:37 · 410 阅读 · 0 评论