首页
编程日记
ChatGpt专题
LINUX学习
Java学习
前端教程
单片机
使用
数学建模
NAND
笔记
ux
SAP ABAP
相机参数
SimGNN
判断
IT难
互联网
高校失物招领系统
全屋智能接口
网页作业
研究报告
语音小夜灯IC
android菜鸟
Scratch等级考试真题
git reflog
线性分类器
同步锁
2024/4/11 16:41:42
【线程同步】条件变量condition为什么必须配合互斥体mutex使用
前言 线程同步属于操作系统方面的知识,它不属于某个具体的语言,也不属于某个具体的库 所有支持线程的语言,都有类似的API,所以我把这篇博客既归到Java专栏,又归到C专栏里 要研究的问题 为什么使用condition时&…
阅读更多...
探索同步锁与单例模式:保证线程安全的实例化
目录 1. 什么是同步锁? 2. 单例模式中的懒汉式是怎么实现的? 3. 懒汉式单例模式的线程安全实现 4. 造成性能损耗的原因 5. 总结 1. 什么是同步锁? 同步锁是多线程编程中用于保护共享资源或临界区的机制,它可以确保在同一时刻只…
阅读更多...
Java多线程编程中同步Synchronized——Java第十讲
前言 上一讲我们讲解了多线程的基础知识,多线程优点很多,但是也有缺点,比如: 线程创建和销毁的开销:创建和销毁线程需要一定的系统资源,这会导致额外的开销。特别是在频繁创建和销毁线程的情况下,开销可能会变得显著。线程安全问题:多线程并发执行可能会导致数据竞争和…
阅读更多...
Synchronized同步锁的全方位剖析与实战运用
目录 一、同步锁简介 二、Synchronized 同步原理 三、锁升级优化 3.1 java 对象头 3.2 偏向锁 3.3 轻量级锁 3.4 自旋锁与重量级锁 3.5 锁优化 锁消除、锁粗化 减小锁粒度 一、同步锁简介 在并发编程中,多个线程访问同一个共享资源时,…
阅读更多...
多线程基础之一:进程间同步问题的来源和解决方案
同步问题诞生的最本质的原因:In fact, a process may be interrupted at any point in its instruction stream, and processing core may be assigned to execute instructions of another process.总之一句话,关于共享对象的更改操作并非原子操作&…
阅读更多...
Java锁系列
一、乐观锁与悲观锁 1、乐观锁: 总是认为不会产生并发问题,每次去取数据的时候总认为不会有其他线程对数据进行修改,因此不会上锁,但是在更新时会判断其他线程在这之前有没有对数据进行修改,一般会使用版本号机制或CA…
阅读更多...
Java线程,多线程,同步锁,线程安全
线程:进程内部的一个执行序列。 进度:执行着的应用程序。 线程的名字: 1,每一个线程都有自己的名字。 main线程的名字就是main,其他线程名字不变:Thread-0,Thread-1 ... 2,线程…
阅读更多...
【后端面经-Java】公平锁和加锁流程
【后端面经-Java】公平锁和加锁流程 1. 公平锁和非公平锁1.1 基本概念1.2 ReentrantLock 的公平锁和非公平锁 2. 加锁流程2.1 ReentrantLock 和 AQS 的关系2.2 公平锁-加锁流程2.3 非公平锁-加锁流程2.4 加锁流程和性能的关系 3. 面试问题模拟参考文献 1. 公平锁和非公平锁 1.…
阅读更多...
java 关键字 volatile、synchronized、Lock
volatile: 简介: 用以声明变量的值可能随时会别的线程修改 使用volatile修饰的变量会强制将修改的值立即写入主存 主存中值的更新会使缓存中的值失效 特性: 1. 可见性 当多个线程访问同一个变量时,…
阅读更多...
以python为例来理解多线程中的同步锁死锁递归锁
目录同步锁死锁递归锁同步锁 首先,我们先了解在使用多线程的时候,什么情况下需要加锁? 那是因为在不同的线程,我们可能会需要对同一个变量进行修改,这个时候就会出现资源抢占的问题,比如在线程A中…
阅读更多...
操作系统专栏——线程同步之互斥锁
之前我们介绍过生产者-消费者模型,意思也就是说,如果有两个线程同时申请临界资源,那么就会有可能产生线程同步的错误,而解决这个问题,我们就要依赖互斥锁。 我们先来说说,互斥锁究竟做到了什么?…
阅读更多...
java多线程学习笔记(二)
本文主要记录了一些本人学习多线程的一下笔记,可作为多线程入门参考。 一、线程简介 请看:https://blog.csdn.net/qq_33157666/article/details/103949005 二、线程状态 线程的状态主要包括: 新建状态(New)&#…
阅读更多...
java多线程学习笔记(三)
一、线程简介 请看:https://blog.csdn.net/qq_33157666/article/details/103949005 二、线程状态 请看:https://blog.csdn.net/qq_33157666/article/details/103949045 三、线程同步 为什么要进行线程同步? java允许多线程并发控制&#…
阅读更多...
java多线程学习笔记(四)
一、线程简介 请看:https://blog.csdn.net/qq_33157666/article/details/103949005 二、线程状态 请看:https://blog.csdn.net/qq_33157666/article/details/103949045 三、线程同步 请看:https://blog.csdn.net/qq_33157666/article/de…
阅读更多...