using(SqlConnection conn=new SqlConnection(strconnection)) //创建数据库连接,使用using,会自动释放 { conn.Open(); ...
分类:
Web程序 时间:
2015-01-16 01:03:28
阅读次数:
228
1. auto_ptr
auto_ptr 是C++标准库提供的类模板,auto_ptr对象通过初始化指向由new创建的动态内存,它是这块内存的拥有者,一块内存不能同时被分给两个拥有者。当auto_ptr对象生命周期结束时,其析构函数会将auto_ptr对象拥有的动态内存自动释放。即使发生异常,通过异常的栈展开过程也能将动态内存释放。auto_ptr不支持new
数组。
2. auto_...
分类:
编程语言 时间:
2015-01-14 09:46:08
阅读次数:
263
我的理解是: step1,假设表里有100行有序记录, 事务1从row 1 开始读取到了row 50 并准备继续读取完这100行。 要注意的是,sql server 会自动释放已经读取了的row的锁。 step2,这时候,另外一个事务2 修改了 事务1已经读取并且被 sql server 释放...
分类:
数据库 时间:
2015-01-12 22:18:07
阅读次数:
170
CLR内存分配分三大块区域:栈、GC堆、大对象堆。一、线程堆栈(栈)用于分配值类型实例。栈由操作系统进行管理,不受GC管理,当值类型不在其作用域(主要是指其所在函数内)时,其所占栈空间自动释放。栈的执行效率是非常高的。二、GC堆(堆)用于分配小对象实例。所谓小对象就是大小小于85000字节的实例对象...
之前一片文章中我们介绍了OC中的两个关键字@property和@synthesize的使用的使用,今天我们来看一下OC中数组对象在是如何处理对象元素的引用计数问题的,同时介绍一下自动释放池的相关概念一、数组对象是如何处理对象元素的引用计数问题 1 // 2 // main.m 3 // ...
分类:
编程语言 时间:
2015-01-03 15:49:47
阅读次数:
177
在之前的一片文章中,我们介绍了数组操作对象的时候引用问题以及自动释放池的概念,今天我们继续来看一下引用计数中一个痛疼的问题:循环引用关于循环引用的问题,这里就不做太多解释了,就是多个对象之间相互引用,形成环状。来看一个具体的例子:Dog类和Person类之间相互引用Dog.h 1 // 2 //.....
分类:
其他好文 时间:
2015-01-03 15:46:05
阅读次数:
182
JS是自动释放内存的,采用的是无用存储单元收集(garbage collection)的方法,js解释器可以检测到什么时候程序不再使用一个变量了,当他确定了一个对象时无用的时候,他就知道不再需要这个对象,可以把它所占用的...
分类:
Web程序 时间:
2014-12-24 10:10:22
阅读次数:
233
auto用来声明自动变量。它是存储类型标识符,表明变量(自动)具有本地范围。块范围的变量声明(如for循环体内的变量声明)默认为auto存储类型。好处:auto变量在离开作用域是会变程序自动释放,不会发生内存溢出情况(除了包含指针的类),比较安全。例:for (auto it = dict.begi...
分类:
编程语言 时间:
2014-12-24 06:23:44
阅读次数:
222
新增了try-with-resource 异常声明 在JDK7中只要实现了AutoCloseable或Closeable接口的类或接口,都可以使用try-with-resource来实现异常处理和资源关闭 异常抛出顺序。在Java se 7中的try-with-resource机制中异...
分类:
其他好文 时间:
2014-12-23 12:37:46
阅读次数:
162
第一、NSAutoreleasePool自动释放池解析
1、自动释放池的物理实现
自动释放池用栈来实现,当你创建一个新的自动释放池是,会压栈到栈顶,接受autorelease消息的对象也会被压入到栈顶
NSAutoreleasePool实现延时释放,内部包含一个数组(NSMutableArray),用来保存声名为autorelease的所有对象。如果一个对象声明为autore...
分类:
其他好文 时间:
2014-12-23 12:21:45
阅读次数:
181