
java线程
文章平均质量分 81
站在墙头上
挣不到钱,只能发奋图强好好学习
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
死锁的产生以及如何避免
策略适用场景优点缺点资源有序分配多锁交叉申请场景简单有效,预防循环等待需全局统一顺序,可能限制灵活性超时机制高并发、允许重试的场景避免无限等待,提升系统健壮性需处理超时重试逻辑无锁编程(CAS、原子类)低竞争、简单操作场景高性能,无死锁风险复杂逻辑实现困难事务回滚数据库、支持回滚的操作保证数据一致性实现成本高关键系统(如金融交易):优先使用资源有序分配和超时机制。高并发系统:减少锁粒度,采用无锁数据结构。复杂事务:结合事务管理和回滚机制。原创 2025-03-07 14:55:03 · 1936 阅读 · 0 评论 -
多线程的常用包
在Java中,多线程编程是一个重要的主题,Java标准库提供了一些常用的包和类来支持多线程的开发。这些包和类提供了构建高效、多线程应用程序所需的基本工具。通过利用这些工具,你可以更容易地实现复杂的并发任务,确保线程安全和性能的优化。提供了一些原子变量类,这些类提供了一种以线程安全方式更新变量的方法,而无需使用锁。这是Java并发包,提供了更加强大和灵活的多线程支持。提供了锁和条件变量的框架。原创 2025-03-05 11:43:10 · 318 阅读 · 0 评论 -
线程的显式锁(Lock)·读写锁(ReadWriteLock)·条件阻塞(Condition)
显式锁·读写锁·条件阻塞0 锁的条件1. 显式锁(Lock)1.1 用法场景1.2 Lock与synchronized1.3 显式锁(Lock)的具体实现2. 读写锁(ReadWriteLock)2.1用法场景2.2原理2.3实现代码3. 条件阻塞(Condition)3.1 Condition的优点3.2具体实现在一些多个线程同时访问一些共享数据,一般都会涉及到线程安全问题。这时候就需要使用...原创 2020-03-21 00:13:48 · 896 阅读 · 0 评论 -
线程的原子操作CAS
线程的原子操作CAS对于线程的原子操作这块,看了好几遍视频,看了很多文章,最终还是没有看懂。先占个坑,后续补回来。。。。原创 2020-03-18 20:51:10 · 267 阅读 · 0 评论 -
线程的并发工具类(5)---Exchanger
Exchanger的使用1. Exchanger介绍1.1 用法场景1.2 原理2. Exchanger使用1. Exchanger介绍Exchanger使用的比较少,这里只做了解。Exchanger:两个线程之间的数据交换。1.1 用法场景两个线程之间的数据交换。1.2 原理初始化Exchanger实例,在两个线程ThreadOne()和ThreadTwo()中分别调用exchan...原创 2020-03-17 18:15:10 · 280 阅读 · 0 评论 -
线程的并发工具类(4)---Semaphore
Semaphore的用法1 .Semaphore介绍1.1 用法场景1.2 原理2 .Semaphore使用1 .Semaphore介绍Semaphore:主要是用于流量控制。作用:控制同时访问某个特定资源的线程数量,用于流量控制。1.1 用法场景最熟悉的场景就是数据库链接池的实现。在链接池的链接都被占用时,就会一直在等待憋的线程释放数据库链接资源,直到池中有可用链接。1.2 原理在...原创 2020-03-17 12:02:43 · 286 阅读 · 0 评论 -
线程的并发工具类(3)---CyclicBarrier
CyclicBarrier的用法1、CyclicBarrier介绍1.1、用法场景1.2、原理2、CyclicBarrier实例3、CyclicBarrier和CountDownLatch比较1、CyclicBarrier介绍CyclicBarrier,线程的同步工具类。作用:让一组线程达到某个屏障,被阻塞,一直到组内最后一个线程达到屏障时,屏障开放,所有被阻塞的线程会继续运行。由自身(该组...原创 2020-03-16 18:12:30 · 297 阅读 · 0 评论 -
线程的并发工具类(2)---CountDownLatch
#####@TOC1、CountDownLatch介绍CountDownLatch,线程的同步工具类。作用:是一组线程等待其他的线程完成工作以后在执行,加强版join。由外部因素(线程)去控制。1.1、用法场景1、某一线程在开始运行前等待n个线程执行完毕。启动一个服务时,主线程需要等待多个组件加载完毕,之后再继续执行。(多个准备线程,一个工作线程)2、实现多个线程开始执行任务的最大并行...原创 2020-03-15 16:02:30 · 307 阅读 · 0 评论 -
线程的并发工具类(1)----Fork/Join框架
Fork/Join框架-分而治之1、分而治之1.1、什么是"分而治之"?1.2、什么是"工作密取"?2、Fork/Join具体实现2.1、Fork/Join使用的标准范式2.2、Fork/Join的同步用法同时演示返回结果值2.3、Fork/Join的异步用法同时演示不要求返回值1、分而治之1.1、什么是"分而治之"?分而治之:规模为N的问题,N<阈值,直接解决,N>阈值,将N分...原创 2020-03-14 22:27:10 · 339 阅读 · 0 评论 -
对Java里的线程多说一点
Java线程1、线程的常用方法和线程的状态2、线程的优先级3、守护线程4、线程之间的共享1、线程的常用方法和线程的状态线程有5种状态:新建状态、就绪状态、运行状态、阻塞状态及死亡状态,整个生命周期就是这几种状态的切换。1.新建状态当用new操作符创建一个线程时。此时程序还没有开始运行线程中的代码。2.就绪状态一个新创建的线程并不自动开始运行,要执行线程,必须调用线程的start()方...原创 2020-03-11 14:22:46 · 217 阅读 · 0 评论 -
线程的理解和初步使用
线程的理解和初步使用1、线程的理解2、线程的简单使用最近学习了一些线程方面的知识,在此记录下。1、线程的理解面试的时候经常会被面试官问到这样一个问题:你对线程的理解有多少?,然后我们脑子里就会想到一些在开发过程中用到线程的功能或地方,比如一些:消息推送,实时接收处理一些大批量的数据,等一些场景。说完之后下个问题:你对进程的理解有多少?然后就会想到每一个运行的程序就是一个进程。官方一点的语言一...原创 2020-03-11 13:22:37 · 215 阅读 · 0 评论