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++ 智能指针
内存泄漏什么是内存泄漏内存泄漏的危害内存泄漏分类如何避免内存泄漏智能指针的使用及原理
RAII
智能指针的原理std::auto_ptrstd::unique_ptrstd::shared_ptrshared_ptr
e我所欲也
·
2020-08-10 20:57
c++
多线程编程lock_guard 和unique_lock (第六讲)
std::lock_guardstd::lock_guard是
RAII
模板类的简单实现,功能简单。1.std::lock_guard在构造函数中进行加
aFakeProgramer
·
2020-08-10 02:50
c++11并发与多线程
C++11线程对象thread
lamda表达式构造通过函数对象构造通过成员函数构造线程结束加入式:join()分离式:detach()线程安全的threadthread对象可以转移所有权智能指针管理thread对象线程类thread,提供
RAII
假正经Leo先生
·
2020-08-09 19:32
C++
c++ 学习之 多线程(六)lock_guard 和 unique_lock
学习之多线程(六)lock_guard和unique_lock前言在使用mutex互斥量时,总会出现lock后没有unlock的情况,尤其是在判断分支中,某些被不常进入的分支忘记unlock,我们可以用
RAII
说LAI话长
·
2020-08-09 18:48
RAII
RAII
它的全称应该是“ResourceAcquireIsInitial”。这是C++创始人BjarneStroustrup发明的词汇,比较令人费解。说起来,
RAII
的含义倒也不算复杂。
ilvu999
·
2020-08-05 13:22
raii
file
c#
class
delete
fun
智能指针初探
智能指针对于
RAII
(获取资源即初始化)编程很重要。其目的是确保资源获取与对象初始化同时发生,从而能够创建该对象的所有资源并在某行代码中准备就绪。
RAII
主要原则:将
Dream_yz
·
2020-08-04 09:32
知识综合
cpp资源管理--智能指针、引用计数、weak_ptr
如需评论,请移步至我的githubblog前言本文面向c++初学者,讲述现代c++语言中的资源管理,包含但不限于:资源获取即初始化(
RAII
),智能指针,引用计数,weak_ptr的由来,垃圾回收机制。
diaoshanglie0450
·
2020-08-03 16:23
java
内存管理
javascript
C++11指针智能 - 常用知识点
RAII
:使用类对象来管理指针,在类的构造函数里面将指针传入并保存在类成员,在类析构的时候将指针释放掉。那么当这个类对象是一个局部变量时,出了作用域就会被析构掉,从而释放指针。
givemefive_001
·
2020-08-03 05:06
C++
C++ 异常处理注意问题
2、使用
RAII
避免内存的泄漏这个问题就是老生常谈了,前面C++资源管理已经整理过了,在这里就不赘述了。3
YoungYangD
·
2020-08-01 05:16
C\C++
C++中智能指针-atuo_ptr、unique_ptr
先引入一个知识点即:
RAII
(ResourceAcquisitionIsInitialization)资源分配即初始化,定义一个类来封装资源的分配和释放,在构造函数完成资源的分配和初始化,在析构函数完成资源的清理
BabysBreath_hl
·
2020-07-31 18:21
C++
库函数
C++
RAII
机制
什么是
RAII
?
RAII
是ResourceAcquisitionIsInitialization(wiki上面翻译成“资源获取就是初始化”)的简称,是C++语言的一种管理资源、避免泄漏的惯用法。
不知道取什么呀
·
2020-07-31 16:00
智能指针 auto_ptr、scoped_ptr、shared_ptr、weak_ptr
什么是
RAII
?
RAII
是ResourceAcquisitionIsInitialization的简称,是C++语言的一种管理资源、避免泄漏的惯用法。
18790970257
·
2020-07-30 02:29
C++
RAII
RAII
的核心思想是将资源或者状态与对象的生命周期绑定,通过C++的语言机制,实现资源和状态的安全管理。理解和使用
RAII
能使软件设计更清晰,代码更健壮。
team79
·
2020-07-29 10:32
c++
c++理解析构函数
析构函数有2种方式调用,一个是主动调用delete,另一个是根据
RAII
的规则,在对象的生命周期结束时自动析构。第一点没什么好说的,就简单讲下第二点。
ayci54153
·
2020-07-29 04:46
从零开始学C++之boost库(一):详解 boost 库智能指针(scoped_ptr 、shared_ptr 、weak_ptr 源码分析)...
一、boost智能指针智能指针是利用
RAII
(ResourceAcquisitionIsInitialization:资源获取即初始化)来管理资源。关于
RAII
的讨论可以参考前面的文章。
zzg168qq
·
2020-07-29 04:47
C++必知必会 -
RAII
(资源获取及初始化)
RAII
(资源获取及初始化),即resourceacquisitionisinitialization;他不是某些人以为的“初始化即资源获取”(initializationisresourceacquisition
百炼成钢
·
2020-07-27 22:21
C++
浅谈auto_ptr智能指针
引入智能指针:智能指针的实现原理:资源分配即初始化
RAII
(ResourceAcquisitionIsInitialization):定义一个类来封装资源的分配和释放,在构造函数完成资源的分配和初始化,
小葱1024
·
2020-07-16 06:07
c++语言
智能指针
auto_ptr
Linux多线程C++工具库:liblmp_tool -- 条件变量Condition
Linux多线程编程工具库liblmp_toolgithub:https://github.com/Dwyane05/liblmp_tool使用
RAII
手法封装MutexLock&mutex_;pthread_cond_tpcond
Dwyane05
·
2020-07-15 22:15
C++
Linux多线程C++工具库:liblmp_tool --
RAII
手法封装互斥锁MutexLock
个人的原则是:·用
RAII
手法封装mutex的创建、销毁、加锁、解锁这四个
Dwyane05
·
2020-07-15 22:15
C++
C++实战30讲-个人笔记
01堆、栈、
RAII
:C++里该如何管理资源?基本概念堆,英文是heap,在内存管理的语境下,指的是动态分配内存的区域。这个堆跟数据结构里的堆不是一回事。
用户名溢出
·
2020-07-15 20:49
智能指针
关键点##
RAII
机制C++操作符重载参考链接##C++11智能指针之unique_ptrshared_ptrshared_ptr的几点注意点智能指针weak_ptrcpluscplusunique_ptr
lutery
·
2020-07-15 19:39
muduo网络库学习之EventLoop(三):Socket、Acceptor、TcpServer、TcpConnection(连接建立,接收消息)
Socket.h/Socket.cc(Socket类)用
RAII
方法封装socketfiledescriptorInetA
s1mba
·
2020-07-15 18:07
muduo网络库学习
Boost中的智能指针详细总结
文章目录1、前言2、你知道
RAII
吗?
造轮子
·
2020-07-15 18:07
Boost
C++ -- 智能指针(自己模拟实现简单的智能指针)
https://blog.csdn.net/xu1105775448/article/details/80625936auto_ptr1.auto_ptr具有
RAII
和像指针一样的特点。
Nicole xu
·
2020-07-15 10:49
C++
物联网知识体系构建中
C++编程中不可避免的就是内存泄漏的问题,
RAII
是ResourceAcquisitionIsInitialization(wiki上面翻译成“资源获取就是初始化”)的简称,是C++语言的一种管理资源、
xiaotabit
·
2020-07-13 22:42
技术
后端架构图谱
【Rust日报】 2019-07-29:关于创建「更小的」Rust的思考
Rust的核心是:代数数据类型、
RAII
、「别名xor可变」,换句话
MikeLoveRust
·
2020-07-13 15:11
[C++]---智能指针介绍简单模拟实现
目录
RAII
模拟实现SmartPtr模拟实现SmartPtr:智能指针的原理:常见的三种智能指针auto_ptr模拟测试C++98版本的库提供的auto_ptrauto_pt模拟实现unique_ptr
夜微雨
·
2020-07-13 11:26
C++
RAII
手法封装互斥锁
CriticalSectionWrapper是一个接口类classCriticalSectionWrapper{public://Factorymethod,constructordisabledstaticCriticalSectionWrapper*CreateCriticalSection();virtual~CriticalSectionWrapper(){}//Triestograblo
nuptxiaoli0518
·
2020-07-12 04:28
Muduo之封装Mutex和Condition
必要的预备知识:Linux提供的进行同步原语解释1、
RAII
手法
RAII
(ResourceAcquisitionIsInitialization)是一种利用对象生命周期来控制程序资源(如内存、文件句柄、
有时需要偏执狂
·
2020-07-12 01:30
Muduo源代码分析
muduo库源码阅读之MutexLock、MutexLockGuard、Contidion、CountDownLatch分析
MutexLock封装临界区(criticalsection),这是一个简单的资源类,用
RAII
手法封装互斥器的创建与销毁
X-Programer
·
2020-07-11 14:52
多线程
muduo源码学习笔记(1)
用
RAII
管理你的锁PosixThread内定义的一系列的mutex函数,但是是基于C语
梦花火
·
2020-07-11 08:41
C++
Unix网络编程
Muduo
智能指针的使用以及原理(面试官让你写一个
RAII
)
1.RAIIRAII(ResourceAcquisitionIsInitialization)是一种利用对象生命周期来控制程序资源(如内存、文件句柄、网络连接、互斥量等等)的简单技术在对象构造时获取资源,接着控制对资源的访问使之在对象的生命周期内始终保持,最后在对象析构的时候释放资源。借此,我们实际上把管理一份资源的责任托管给了一个对象。这种做法有两大好处:不需要显式地释放资源。采用这种方式,对象
乌克兰水晶小乳猪
·
2020-07-11 05:18
C++
RAII
手法封装的互斥器mutex和条件变量condition类
目录
RAII
手法封装的互斥器mutex和条件变量condition类前言概要原则宏定义部分互斥锁(Mutex)条件变量(Conditionvariable)倒计时(CountDownLatch)死锁调试小结
weixin_30710457
·
2020-07-10 19:48
智能指针
智能指针原理:
RAII
特性重载operator*和operator->,使其具有像指针一样的行为auto_ptrC
你看看这个C还有++
·
2020-07-10 00:07
C++
C++之
RAII
技术解析
转载:C++之
RAII
技术解析1.什么是
RAII
技术?
小呀小二笙
·
2020-07-09 23:49
浅谈C和C++中的资源释放
浅谈C和C++中的资源释放一、简介二、实现资源释放的有效途径1.C实现资源释放的有效途径(1)巧用do{}while{0}(2)goto语句实现资源回收2.C++实现资源释放的有效途径(1)
RAII
——
Litost_Cheng
·
2020-07-09 08:26
经验总结
写优先读写锁,读效率比 WINDOWS 的 SRWLOCK 慢一倍左右,百万级读锁要156ms
SRWLOCK慢一倍左右,百万级读锁要156ms(78ms)写效率比WINDOWS的SRWLOCK慢N倍,百万级写锁要1516ms(62ms)CKSRWLock读写锁实现CAutoLockRead读锁的自动化(
RAII
Rain7758
·
2020-07-09 07:43
并发
RAII
和垃圾收集
Author:Elminsterhttp://blog.csdn.net/Elminster/先来看一小段代码,它取自BjarneStroustrup的演讲“SpeakingC++asaNative”://useanobjecttorepresentaresource("resourceacquisitionisinitialization")classFile_handle{//belongsi
zheng80037
·
2020-07-09 05:55
Modern C++的应用,实现golang中的defer
modernC++实现golang的defer关于
RAII
的一些思考。defer的简介注:没有golang语法基础的读者可以看看,反之,可以跳过。golang语法中的defer是什么?
暂代
·
2020-07-09 04:04
C/C++语言
C++ —— c++面试(校招)的可能问题
一般会问这些:1,语言基础,比如static关键字,类型转换,多态机制,类实例的初始化及大小,拷贝语义和移动语义等;2,内存管理&&资源管理,
RAII
和智能指针,可能还有池技术之类的;3,STL,最常见的容器和容器适配器
Harmin
·
2020-07-09 03:47
C++
c++
C# vs C++之二:GC vs
RAII
C#和C++两门语言的定位不同,它们在资源管理方面采取了两种截然不同的方式:一为GC,一为
RAII
。GC让程序建立在更高的抽象层次上,使资源管理变得更方便,更安全;而RAI
weixin_33995481
·
2020-07-08 16:07
C++营养(
RAII
)(转)
C++的营养莫华枫动物都会摄取食物,吸收其中的营养,用于自身生长和活动。然而,并非食物中所有的物质都能为动物所吸收。那些无法消化的物质,通过消化道的另一头(某些动物消化道只有一头)排出体外。不过,一种动物无法消化的排泄物,是另一种动物(生物)的食物,后者可以从中摄取所需的营养。一门编程语言,对于程序员而言,如同食物那样,包含着所需的养分。当然也包含着无法消化的东西。不同的是,随着程序员不断成长,会
weixin_33896726
·
2020-07-08 16:07
C++的营养——
RAII
C++的营养莫华枫动物都会摄取食物,吸收其中的营养,用于自身生长和活动。然而,并非食物中所有的物质都能为动物所吸收。那些无法消化的物质,通过消化道的另一头(某些动物消化道只有一头)排出体外。不过,一种动物无法消化的排泄物,是另一种动物(生物)的食物,后者可以从中摄取所需的营养。一门编程语言,对于程序员而言,如同食物那样,包含着所需的养分。当然也包含着无法消化的东西。不同的是,随着程序员不断成长,会
longshanks
·
2020-07-07 14:54
C++之
RAII
惯用法
C++中的
RAII
全称是“Resourceacquisitionisinitialization”,直译为“资源获取就是初始化”。但是这翻译并没有显示出这个惯用法的真正内涵。
Benjamin87v5
·
2020-07-07 10:46
C/C++
C++垃圾回收机制
您可以使用使用
RAII
的智能指针(如果指针允许共享访问,则使用引用计数)来确定何时删除对象。一个好的智能指针库是Boost的智能指针。绝大多数情况下的智能指针可以取代原始指针。
fengmao31
·
2020-07-07 07:18
【技术】Csharp编程
C++11中std::lock_guard的使用
更好的办法是采用”资源分配时初始化”(
RAII
)方法来加锁、解锁,这避免了在临界区中因为抛出异常或return等操作导致没有解锁就退出的问题。极大地简化了程序员编写mutex相关的异常处理代码。
fengbingchun
·
2020-07-07 07:09
Multi-thread
RAII
和垃圾收集(上)
先来看一小段代码,它取自BjarneStroustrup的演讲“SpeakingC++asaNative”://useanobjecttorepresentaresource("resourceacquisitionisinitialization")classFile_handle{//belongsinsomesupportlibraryFILE*p;public:File_handle(co
Elminster
·
2020-07-06 21:06
raii
file
destructor
initialization
c++
reference
RAII
和垃圾收集(下)
上回说到,
RAII
与现有的GC环境互不相容,也提到了问题的症结在于对析构函数的调用。
Elminster
·
2020-07-06 21:06
C++智能指针深层剖析,模拟实现
智能指针遵从
RAII
规则,我们先来介绍什么是
RAII
.
RAII
:是一种规范,一种解决问题的思想。负责资源分配即初始化,
ChaseRaod
·
2020-07-06 21:39
cpp
C++
Mbed OS 文档翻译 之 参考(API(平台(概述)))
锁,DeepSleepLock和CriticalSectionLock使用
RAII
创建一个范围,在该范围内保持适当的锁;这些锁获取操作是它们的构造函数,它们的释放操作是
XinLiBK
·
2020-07-05 17:26
Mbed
OS
上一页
5
6
7
8
9
10
11
12
下一页
按字母分类:
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
其他