码迷,mamicode.com
首页 >  
搜索关键字:raii    ( 121个结果
RAII手法封装互斥锁
RAII手法是 Resource Acquisition is Initialization 的缩写,意为“资源获取即初始化”,在使用智能指针时也使用,下面是针对互斥量时的实现, 1 #include 2 #include 3 4 using namespace std; 5 6 class...
分类:其他好文   时间:2014-10-16 16:09:32    阅读次数:141
RAII惯用法:C++资源管理的利器
原文出处:http://www.cnblogs.com/hsinwang/articles/214663.html ????RAII是指C++语言中的一个惯用法(idiom),它是“Resource?Acquisition?Is?Initialization”的首字母缩写。中文可将其翻译为“资源获...
分类:编程语言   时间:2014-10-09 21:14:18    阅读次数:298
等待线程结束
在看《Cplusplus Concurrency in Action Practical Multithreading》。记录一下学习过程,这是第二章等待线程结束部分...
分类:编程语言   时间:2014-10-09 18:07:07    阅读次数:241
Linux封装之四:RAII实现MutexLock自动化解锁
在实现线程的过程中,我们经常会写类似于这样的代码:{ mutex_.lock(); //XXX if(...) 语句; //XXX mutex_.unlock();}虽然这段代码是正常的加锁解锁,但是有时候我们难免会出现一些低级错误,例如把 忘了写...
分类:系统相关   时间:2014-10-08 04:01:04    阅读次数:379
Linux组件封装(四)使用RAII技术实现MutexLock自动化解锁
我们不止一次写过这种代码: { mutex_.lock(); //XXX if(....) return; //XXX mutex_.unlock(); } 显然,这段代码中我们忘记了解锁。那么如何防止这种情况,我们采用和智能指针相同的策略,把加锁和解锁的过程封装在一个对象中。 实现“对象生命期”等...
分类:系统相关   时间:2014-10-07 21:53:24    阅读次数:215
c++异常处理
C++异常当然可以通过try...catch处理,不过没有finally关键词。C++资源的释放可以通过RAII实现。RAII,也称为“资源获取就是初始化”,是c++等编程语言常用的管理资源、避免内存泄露的方法。它保证在任何情况下,使用对象时先构造对象,最后析构对象。Destructors shou...
分类:编程语言   时间:2014-10-04 02:08:55    阅读次数:155
[转]STL的内存分配器
题记:内存管理一直是C/C++程序的红灯区。关于内存管理的话题,大致有两类侧重点,一类是内存的正确使用,例如C++中new和delete应该成对出现,用RAII技巧管理内存资源,auto_ptr等方面,很多C/C++书籍中都使用技巧的介绍。另一类是内存管理的实现,如linux内核的slab分配器,S...
分类:其他好文   时间:2014-09-03 00:06:15    阅读次数:545
《effective c++》读书笔记2
条款13:以对象管理资源 使用RAII,获得资源后立刻放进管理对象,管理对象运用析构函数确保资源被释放。 为防止资源泄露,请使用RAII对象,它们在构造函数中获得资源并在析构函数中释放资源。 两个常被使用的RAII类是tr1::shared_ptr和tr1::auto_ptr。前者通常是较佳选择,因为其拷贝行为比较直观。若选择auto_ptr,复制动作会使被复制物指向null.  条款14...
分类:编程语言   时间:2014-08-22 16:22:49    阅读次数:250
Effective C++ 条款15、16 在资源管理类中提供对原始资源的访问||成对使用new 与 delete要采取相同形式
1、在资源管理类中提供对原始资源的访问 前几个条款很棒,它们是对抗资源泄露的壁垒,但很多APIs直接指向 资源,这个时候,我们需要直接访问原始资源。 这里,有两种方法解决上述问题,我们可将RAII对象转换为原始资源。通过 显式转换与隐式转换。 通常,tr1:: shared_ptr 和 auto_p...
分类:编程语言   时间:2014-08-20 16:14:02    阅读次数:177
13——以对象管理资源
RAII(resource acquisition is initialization):资源获取时便是初始化时机。不论控制流如何离开执行的区域块,其析构函数被调用,资源被释放。为防止内存泄露使用auto_ptr或shared_ptr();auto_ptr sp(new class)+shared_...
分类:其他好文   时间:2014-08-11 17:22:02    阅读次数:204
121条   上一页 1 ... 9 10 11 12 13 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!