E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
RAII互斥量
【C#Mutex】 initiallyOwned错误引起的缺陷
临界区只能对同一个进程的不同线程同步,
互斥量
可以跨进程同步。典型应用场景:两个exe会操作同一个注册表项。
闻缺陷则喜何志丹
·
2024-09-15 19:31
c#
互斥量
进程
同步
WaitOne
initiallyOwned
临界区
C++11多线程消费者生产者问题
互斥量
std::mutex
GuoZzzCHEN
·
2024-09-14 01:05
c++
开发语言
多线程
并发编程
Go语言 管道1
目录无缓冲通道有缓冲的管道语法特点代码示例未分配空间示例读取次数不一致示例For-range遍历总结无缓冲通道sync.RWMutex{}当涉及到多go程时,c语言使用
互斥量
,上锁来保持资源同步,免资源竞争问题
JSON_L
·
2024-09-12 16:38
GO
golang
开发语言
后端
【多线程服务器】多线程下网络编程
线程池Proactor模式Master-Worker模型多线程编程的实现线程抢占问题Happens-Before关系Linux下多线程编程常用函数线程的创建线程销毁多线程下的I/ORAII与文件描述符管理
RAII
gma999
·
2024-09-12 16:07
c++
服务器
STM32 HAL freertos零基础(七)
互斥量
1、
互斥量
互斥量
主要用于保护共享资源的访问,确保在同一时刻只有一个任务可以访问该资源。互斥性:当一个任务获取了一个
互斥量
后,其他任务将无法再获取同一个
互斥量
,直到原始任务释放该
互斥量
。
啥也不会的小白研究生
·
2024-09-12 10:30
零基础学习Freertos
stm32
嵌入式硬件
单片机
C++——智能指针
目录一.何为智能指针
RAII
二.智能指针的种类三.内存泄漏结语一.何为智能指针RAIIRAII(ResourceAcquisitionIsInitialization)是一种利用对象生命周期来控制程序资源
很楠不爱
·
2024-09-10 12:40
c++
开发语言
C++设计模式:Singleton 模式( 单例模式)
实现单例模式的步骤:1、构造函数私有化2、增加静态私有的当前类的指针变量3、提供静态对外接口,可以让用户获得单例对象单例分为懒汉式和饿汉式懒汉式:解决了饿汉式内存浪费问题,但是线程不安全的,可以通过
互斥量
杨过爱喝哇哈哈
·
2024-09-07 08:49
c++
设计模式
单例模式
避免遗忘UNLOCK的小技巧
这是个人微信公众号LinuxerPub发布的文章C++程序可以通过封装来实现
RAII
,从而避免一切资源泄漏,包括忘记unlock。
glinuxer
·
2024-09-04 07:48
使用C++开发黑神话悟空类似3A如何避免内存泄漏
RAII
(ResourceAcquisitionIsInitialization):采用
RAII
原则,确保资源在对象生命周期结束时被正确释放。这意味着资源的获取和释放与对象的创建和销毁同步
Code apprenticeship
·
2024-08-30 07:06
后端
c++
java
开发语言
【编程规范具体案例(基于Qt、微软、谷歌和AUTOSAR C++14 参考)】 C++ 编码规范 之并发篇
明确定义线程的生命周期管理策略12.1.2\[必须]为关键线程设置明确的标识符12.1.3\[必须]在多线程环境中安全地处理异常12.2线程同步规则12.2.1\[必须]使用线程安全的数据结构和访问模式12.2.2\[必须]使用
RAII
泡沫o0
·
2024-08-29 07:56
软件编码规范
qt
microsoft
c++
arm
linux
嵌入式
c++20
C语言:科目二【基础知识】
文章目录0x1常见0x2Lambda0x3definetypedefusing0x4基类菱形继承(虚基类)0x5构造0x6智能指针(涉及
RAII
概念)todo0x7类型推导[auto与decltype]
EastWood2013
·
2024-08-27 17:12
C/C++
c语言
开发语言
BAT32G137国产项目通用第五节:FreeRTOS
互斥量
主题:
互斥量
的使用比较单一,因为它是信号量的一种,并且它是以锁的形式存在。在初始化的时候,
互斥量
处于开锁的状态,而被任务持有的时候则立刻转为闭锁的状态。
互斥量
更适合于:1.可能会引起优先级翻转的情况。
喜欢吃火锅的泪
·
2024-08-25 19:13
FreeRTOS
单片机
c语言
stm32
C++八股之
RAII
RAII
(ResourceAcquisitionIsInitialization)是一种编程范式,用于管理资源的获取和释放。
Tmicen
·
2024-03-14 18:46
c++
开发语言
什么是Rust 语言
Rust使用
RAII
(ResourceAcquisitionIsInitialization)管理资源,通过所有权系统以编译时检查内存安全。它强调零开销的抽象和安全的并行计算。
chunmiao3032
·
2024-03-02 20:09
rust
开发语言
后端
C++
RAII
RAII
定义
RAII
(ResourceAcquisitionIsInitialization)是C++编程中的一种重要的资源管理技术。
不是杠杠
·
2024-02-20 20:59
c++基础
c++新特性
c++
C++11多线程|互斥锁|条件变量|异步
文章目录线程threadstd::thread语法构造函数主要成员函数简单线程的创建线程封装
互斥量
独占
互斥量
std::mutexstd::mutex介绍std::mutex的成员函数递归
互斥量
std::
Phoenix Studio
·
2024-02-20 20:35
C++
c++
开发语言
算法
数据结构
4. C++ 线程同步之条件变量
条件变量需要和
互斥量
配合起来使用,C++11提供了两种条件变量:condition_variable:需要配合std::unique_lockstd::mutex进行wait操作,也就是阻塞线程的操作。
九五一
·
2024-02-20 19:34
C++知识
c++
java
开发语言
Linux线程同步与Windows线程同步
在WIN32中,同步机制主要有以下几种:(1)事件(Event);(2)信号量(semaphore);(3)
互斥量
(mutex);(4)临界区(Criticalsection)。
路过的小熊~
·
2024-02-19 18:38
Linux应用编程
gcc/gdb编译调试
linux
c++
【lesson54】线程互斥
文章目录线程互斥线程互斥
互斥量
mutex大部分情况,线程使用的数据都是局部变量,变量的地址空间在线程栈空间内,这种情况,变量归属单个线程,其他线程无法获得这种变量。
(unstoppable)
·
2024-02-15 10:07
linux
java
redis
开发语言
Linux
线程互斥
C++
嵌入式软件工程师面试题(七)
5、说说内联函数和宏函数的区别6、在FreeRTOS中,二值信号量和
互斥量
的区别?1
嵌入式基地
·
2024-02-15 04:06
牛客网嵌入式刷题专栏
面试
嵌入式面试
面试题
freertos
单片机
python 阻止程序并行运行(pypiwin32模块)
互斥量
:采用互斥对象机制。互斥锁,像一个物件,这个物件只能同时被一个线程持有。只有拥有互斥对象的线程才有访问公共资源的权限,因为互斥对象只有一个,所以能保证公共资源不会同时被多个线程访问。
kelebukele
·
2024-02-15 01:45
python
windows
【Linux学习】生产者-消费者模型
-消费者模型22.4.1实现阻塞队列BlockQueue1)添加一个容器来存放数据2)加入判断BlockingQueue情况的成员函数3)实现push和pop方法4)完整代码22.4.2[可选]修改成
RAII
Chris在Coding
·
2024-02-15 00:22
[Linux学习]从0到1
linux
设计模式
c++
后端
服务器
【Linux学习】线程互斥与同步
20.3互斥锁mutex20.4
互斥量
的接口20.4.1
互斥量
初始20.4.2
互斥量
销毁20.4.3
互斥量
加锁20.4.4
互斥量
解锁20.4.5
互斥量
的基本原理20.4.6带上互斥锁后的抢票程序20.5
Chris在Coding
·
2024-02-14 04:47
[Linux学习]从0到1
linux
服务器
后端
【FreeRTOS】
互斥量
:任务们的“排他之约”
今天我们要聊的话题可不是什么传统武侠小说里的暗器,而是RTOS中那些任务们的“排他之约”——
互斥量
。别以为这只是个高大上的名词,它其实就像是任务们之间的排队规矩,一种“我先我先”的约定。
香蕉不会写代码
·
2024-02-13 07:51
FreeRTOS
c语言
单片机
嵌入式硬件
物联网
iot
嵌入式实时数据库
单例模式 C++
6种单例的手写,都是懒汉(饿汉代码在“懒汉/饿汉的区别”)目录✊前言GPT解析概念解析
RAII
懒汉/饿汉的区别特点举例单例--伪代码适用场景单例--实现方式优缺点手写6种单例模式(一)懒汉--内存泄露(
千帐灯无此声
·
2024-02-13 06:28
#
C++
设计模式
单例模式
c++
C++进阶(十四)智能指针
二、内存泄漏1、什么是内存泄漏,内存泄漏的危害2、内存泄漏分类3、如何避免内存泄漏三、智能指针的使用及原理1、
RAII
2、智能指针的原理四、智能指针的分类1、std::auto_ptr2、std::unique_ptr3
北尘_
·
2024-02-12 23:24
C++
c++
java
开发语言
effective c++ 笔记 条款13-18
并采用
RAII
(ResourceAcquisitionIsInitialize,资源取得时机便是初始化时机,即获得资源后立刻放进管理对象),让管理对象的析构函数负责资源的释放。当对象被销毁时自
Mhypnos
·
2024-02-12 07:11
effective
c++
c++
笔记
【TRIE字典树实现:400行】(模糊匹配 | AC自动机 | 多模式匹配 | 串排序 | 词频计数 | 相似度分析 |
RAII
模式 | 前缀比较 )
目录程序测试[insert_erase_countDEMO]插入测试【ACAutomiton|MultipatternmatchingDEMO】AC自动机|多模式匹配测试【RecursivetdeepcopyconstructDEMO】多叉树的递归深拷贝测试【stringsortDEMO】串的非比较排序测试【fuzzypatternmatchingDEMO】模糊匹配测试【Similarityana
XNB's Not a Beginner
·
2024-02-11 22:42
算法
语言特性
Modern
Cpp
ADT数据结构实现
c++
算法
开发语言
哈希算法
图论
数据结构
链表
一名合格的后端开发,到底需要多了解mysql - 6&7
6-锁lock和latchlatch:内存中的轻量级
互斥量
或读写锁,其目的是为了保证并发线程操作临界资源的正确性。无死锁检测和处理机制。
·
2024-02-11 17:53
后端mysqlinnodb面试
C++——智能指针
目录智能指针出现的原因避免内存泄漏智能指针的使用及原理
RAII
智能指针的原理auto_ptrunique_ptrshared_ptrweak_ptr定制删除器智能指针出现的原因在上一篇异常的介绍中就提到了
微yu
·
2024-02-10 13:05
C++
c++
Linux线程 分离和同步与互斥 条件变量
Linux线程分离和同步与互斥条件变量1.分离线程2.线程互斥与
互斥量
3.线程同步与竞态条件4.pthread库与条件变量5.生产者-消费者1.分离线程什么是线程分离?
yualian
·
2024-02-10 06:10
linux
c语言
服务器
【C/C++ 14】C++11智能指针
为了解决上述问题,于是就引入了智能指针(
RAII
)的概念。
RAII
(ResourceAcquisitionIsInitializat
AllinTome
·
2024-02-09 19:34
C/C++
c++
开发语言
yo!这里是Linux线程保姆级入门介绍
目录前言Linux线程基础线程概念底层示意图线程vs进程Linux线程控制创建线程线程ID线程终止线程等待线程分离Linux线程互斥背景概念
互斥量
mutex1.相关接口2.实现原理可重入vs线程安全死锁
大写的酷
·
2024-02-09 02:08
cpp
开发语言
c++
职场和发展
后端
经验分享
linux
服务器
深入解析C++智能指针:从auto_ptr到weak_ptr
有一种解决方法,使用
RAII
(resourceacquisitionisinitialisition)技术,即使用局部对象控制资源,这就是智能指针。
灿烈♡
·
2024-02-08 04:18
C++
c++
C++进阶--C++11线程库
调用带参的构造函数1.1.3调用移动构造函数1.2thread提供的成员函数1.3获取线程的id方式1.4线程函数的参数问题1.5join与detach1.5.1join方式1.5.2detach方式二、
互斥量
库
sushang~
·
2024-02-07 22:39
c++
开发语言
Linux系统编程(七)--线程控制
文章目录1线程属性1.1pthread_attr_t1.2不同属性的作用2
互斥量
的共享属性2.1属性的初始化与回收2.2共享属性3
互斥量
的鲁棒属性3.1相关函数3.2
互斥量
状态一致性4递归型
互斥量
4.1
-出发-
·
2024-02-07 15:50
Linux系统编程
linux
linux编程常见的锁(互斥锁、读写锁、自旋锁等)
以下是几种常见的锁机制:互斥锁(Mutex):也被称为
互斥量
,是最常用的锁之一。它保证在同一时间只有一个线程可以访问被保护的资源。
稚肩
·
2024-02-07 15:03
嵌入式linux
linux
互斥锁
自旋锁
读写锁
【C++从0到王者】第四十站:智能指针
文章目录一、为什么需要智能指针二、智能指针1.基本使用2.
RaII
3.解引用4.赋值运算符重载的问题三、auto_ptr1.库里面的auto_ptr2.模拟实现auto_ptr四、unique_ptr1
青色_忘川
·
2024-02-07 11:14
【C++】
c++
算法
开发语言
服务器
linux
运维
数据库
Linux下线程安全和锁
目录什么是线程安全概念Linux下线程安全的实现常见线程安全的实现方法Linux线程互斥
互斥量
锁通过加锁实现线程安全线程安全示例代码线程不安全的情况常见的线程安全的情况什么是线程安全概念线程安全是指在多线程环境下
高高__
·
2024-02-07 09:05
开发语言
linux
c语言
c++
c++11 智能指针底层原理和代码模拟实现
目录内存泄漏的危害如何避免内存泄漏智能指针的使用及原理
RAII
智能指针的原理c++库中3个智能指针auto_ptr(简单实现)unique_ptr(简单粗暴的防止拷贝)share_ptr为什么需要智能指针
高高__
·
2024-02-07 09:34
c++
开发语言
【trie 字典树】(
RAII
| Multiset频次统计 | STL )
#include#include#include#include#include#include#includeclasstrie{structNode;usinghasher=std::unordered_map>;structNode{std::optionalfrequency{std::nullopt};hasherchildren;Nodeoperator=(constNode&)=de
XNB's Not a Beginner
·
2024-02-07 08:56
ADT数据结构实现
语言特性
Modern
Cpp
算法
数据结构
c++
stl
hash
链表
【编程】linux多线程同步机制——屏障
复习:线程同步方式:
互斥量
,读写锁,条件变量,自旋锁,屏障。屏障(barrier)是用户协调多个线程并行工作的同步机制。屏障允许每个线程等待,直到所有合作线程都到达某一点,然后从该点继续执行。
榕树子
·
2024-02-07 06:40
linux
c
编程
linux
c
【Linux】生产者消费者模型
public:BlockQueue(intmaxCap=N):_maxCap(maxCap)//初始化阻塞队列最大容量{pthread_mutex_init(&_mutex,nullptr);//初始化
互斥量
凌云志.
·
2024-02-07 02:37
Linux
linux
运维
C++多线程学习06 利用
RAII
RAII
是C++的发明者BjarneStroustrup提出的概念,
RAII
全称是“ResourceAcquisitionisInitialization”,直译过来是“资源获取即初始化”,也就是说在构造函数中申请分配资源
很难绷得住
·
2024-02-06 22:00
操作系统
C++进阶
c++
学习
开发语言
C++多线程std::lock
lock类std::lock_guard,与mutexRAII相关,方便线程对
互斥量
上锁。
钟离默
·
2024-02-06 22:00
多线程
js
ios
c++
javascript
C++线程中的五种常见锁与C++
RAII
锁的常见用法
二、C++锁的
RAII
用法总结前言一、C++线程中的几类锁?C++多线程中的锁主要有五类:互斥锁(信号量)、条件锁、自旋锁、读写锁、递归锁。
c+猿辅导
·
2024-02-06 22:00
手把手教你C++开发
手把手教你服务器开发
c++
开发语言
C++11多线程学习: 利用
RAII
正确释放
风险代码#include#includevoiddo_something(unsignedinti){printf("%d\n",i);}structfunc{int&i;func(int&i_):i(i_){}voidoperator()(){for(unsignedj=0;j<10;++j){do_something(i);//潜在访问隐患:悬空引用}}};classthread_guard{
在?升龙拳!
·
2024-02-06 22:00
C++多线程
c++
【C++】11新特性:std::thread、std::mutex和两种
RAII
方式的锁封装
一、std::thread在C++11之前,开发多线程的程序,一般都是使用pthread_create来创建线程,繁琐且不易读,可以看一下它的函数原型:intpthread_create(pthread_t*restricttidp,constpthread_attr_t*restrict_attr,void*(*start_rtn)(void*),void*restrictarg);输入参数:第
不知所措的渣渣辉
·
2024-02-06 22:30
【C++】
c++
开发语言
算法
C++必知必会:
RAII
惯用法
文章目录使用
RAII
惯用法分配堆内存示例对多线程锁的获取和释放小结使用
RAII
惯用法
RAII
(ResourceAcquisitionIsInitialization,资源获取即初始化)指资源在我们拿到的时候就已经初始化
_索伦
·
2024-02-06 22:29
#
C++服务器开发
c++
开发语言
C++ 多线程编程(二) 各种各样的锁
定时互斥锁(timed_mutex)3.条件变量(condition_variable)4.读写锁(shared_mutex)5.递归锁(recursive_mutex)6.自旋锁(spinlock)二、
RAII
璇焱如柳
·
2024-02-06 22:59
C++相关
c++
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他