Java多线程
文章平均质量分 94
Java多线程的笔记专栏
还会有机会吗
Themberfue很懒,还没有留下什么
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Java 多线程 ①④ (完结)-信号量 || CountLatch || 写时拷贝 || 分段锁
信号量Semaphore。原创 2024-12-06 20:24:53 · 1100 阅读 · 0 评论 -
Java 多线程 ①③-CAS || 原子类 || Atomic || ABA问题 || Callable || ReentrantLock
CASCAS 的 Compare-And-Swap(比较并交换)的缩写是多线程并发操作中的一个关键操作,保证了数据的一致性,又确保了线程不会因为阻塞影响执行效率CAS 本质是 CPU 的一条指令,所以操作上是原子的~CAS 操作会比较某个值是否等于预期值,如果某个值等于预期值,就将该值更新为新值;如果不相等,说明该值已经被其他线程修改过,CAS 操作便会失败~address:表示当前内存中的值的地址,也就是需要被更新的值的地址。原创 2024-12-04 23:42:53 · 670 阅读 · 0 评论 -
Java 多线程 ①②-常见的锁策略 || 锁升级 || 锁消除 || 锁粗化
悲观锁 => 重量级锁 => 挂起等待锁。原创 2024-12-01 20:43:30 · 934 阅读 · 0 评论 -
Java 多线程 ①①- 实现简单的线程池 || 定时器 || 简单实现定时器 || 时间轮实现定时器
额外创建一个线程来执行任务里的逻辑。原创 2024-11-28 20:49:26 · 1052 阅读 · 0 评论 -
Java 多线程 ⑩-TGA黑猴投票喵~ || 线程池 || ThreadPoolExecutor || 拒绝策略 || Executors
线程池"常量池"多线程虽然极大程度地解决了多进程的创建与销毁所带来的时间开销,但随着时代的发展,频繁地创建与销毁线程,也是一件开销很大的事在运行之初,就先把线程创建好,放到一个数据结构里存着,后续需要用的时候,从这里取一个出来执行任务,执行完毕后再放回去为什么我们认为直接创建线程的开销和从池子里取线程的开销更大呢?"用户态""内核态"一个操作系统其实就是 "内核" 和 "配套的应用程序";内核包含操作系统的各种核心功能:管理各种硬件,给软件提供稳定的运行环境。原创 2024-11-25 23:09:33 · 765 阅读 · 0 评论 -
Java 多线程 ⑨-生产者-消费者模型 || 阻塞队列 || 模拟实现BlockingQueue
这里是Themberfue这里是Themberfue阻塞队列阻塞队列阻塞队列是线程安全的,还有其阻塞特性当队列放满时,如果此时还有线程想要入队列时,那么这个操作就会阻塞,直到有元素出队列为止但队列为空时,如果此时还有线程想要出队列时,那么这个操作也会阻塞,直到有元素入队列为止生产者-消费者模型餐厅中的点餐和上菜过程在餐厅中,顾客点单和厨师制作菜品,有源源不断地顾客点单,同时厨师也一丝不苟地制作菜品以服务顾客我们将顾客类比为 "生产者",将厨师类比为 "消费者"原创 2024-11-18 23:29:29 · 794 阅读 · 0 评论 -
Java 多线程 ⑧-设计模式 || 单例模式 || 饿汉模式 || 懒汉模式 || 指令重排序
单例模式。原创 2024-11-15 17:48:11 · 769 阅读 · 0 评论 -
Java 多线程 ⑦-内存可见性 || volatile || JMM || wait notify notifyAll
在上一节中,我们讨论了死锁的概念,产生的场景 ,产生的必要条件......内存可见性。原创 2024-11-12 19:13:27 · 1070 阅读 · 0 评论 -
Java 多线程 ⑥-死锁 || 构成死锁的条件 || 死锁总结 || Java标准库的线程安全类
死锁一个线程,一把锁,同时加两把锁。原创 2024-11-10 11:35:01 · 913 阅读 · 0 评论 -
Java 多线程 ⑤-线程安全问题 || 锁 || synchronized
通过使用锁,对先前的 count++ 操作就可以将其变为原子的,在加上锁后,count++ 的三个指令就会完整执行完毕后才可能被调度走。并不是加上了 synchronized 就一定保证线程安全,得要正确地使用锁,在该使用的时候使用锁,在对的地方使用锁。Java中解决线程安全问题的最主要的方案就是给代码块加锁,通过加锁,可以让不是原子的操作,打包成一个原子的操作。,这些指令的集合统称为指令集,指令集有两种,一种是..... (再讲就串台了,这是计算机组成原理的知识哦)原创 2024-11-08 00:04:41 · 907 阅读 · 0 评论 -
Java 多线程 ④-线程状态 || join,sleep || 线程安全问题 详解
这里是Themberfue这里是Themberfue一个Thread对象,只能 start 一次sleep。原创 2024-11-04 20:48:21 · 991 阅读 · 0 评论 -
Java 多线程 ③-Thread || Runnable
Thread。原创 2024-10-30 16:20:29 · 1120 阅读 · 0 评论 -
Java 多线程 ②-Thread || Runnable
这里是Themberfue这里是Themberfue多线程· Java标准库中提供了Thread类,以程序员们编写多线程代码,我们可以查看官方文档进一步了解Thread的特性以及提供的接口。· 类似于Sytem类,Math类以及某些超类等,Thread也是Java.lang在包下,是程序运行时默认导入的。Thread。原创 2024-10-26 20:25:12 · 733 阅读 · 0 评论 -
Java 多线程 ①-进程 || 线程 || 多线程
但对于线程来说,只是第一个线程创建时(随着进程的创建而创建)申请资源,后续再次创建线程时,不再涉及到申请资源的操作,同理,只有最后一个线程销毁(随着进程的销毁而销毁)才释放资源。这里的人也就是一个线程,两个线程在一个进程里同时工作,效率也会大大加大,也不需要消耗过多的资源。我们都知道,这样由一个人吃完,效率是非常低效的,也就是好比单进程开发,效率是远比多进程低的。线程与进程一样,所记录的数据无非就是,调度相关,状态,优先级,记账信息,上下文。再比如:一个人没用吃的想吃的,非常生气,直接掀桌不干了,原创 2024-10-24 12:54:46 · 907 阅读 · 0 评论
分享