Java并发

本文深入探讨Java并发,涉及Java内存模型、线程中断机制、同步集合与并发集合的区别、线程池原理、活锁与死锁概念及避免死锁策略、通知机制的notify()与notifyAll()差异,以及可重入锁ReentrantLock的应用和读写锁的适用场景。
摘要由CSDN通过智能技术生成

1,Java内存模型是什么?

    Java内存模型规定和指引Java程序在不同的内存架构、CPU和操作系统间有确定性地行为。它在多线程的情况下尤其重要。Java内存模型对一个线程所做的变动能被其它线程可见提供了保证,它们之间是先行发生关系。这个关系定义了一些规则让程序员在并发编程时思路更清晰。比如,先行发生关系确保了:

    线程内的代码能够按先后顺序执行,这被称为程序次序规则。

    对于同一个锁,一个解锁操作一定要发生在时间上后发生的另一个锁定操作之前,也叫做管程锁定规则。

    前一个对volatile的写操作在后一个volatile的读操作之前,也叫volatile变量规则。

    一个线程内的任何操作必需在这个线程的start()调用之后,也叫作线程启动规则。

    一个线程的所有操作都会在线程终止之前,线程终止规则。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值