(一)
上一条款说的auto_ptr和tr1::share_ptr适合于heap-based的资源,然而并不是所有资源都是heap-based的。换句话说并不是tr1::shared_ptr 和 auto_ptr 永远适合做为资源的管理者。所以有时难免还是需要实现自己的资源管理类型。
假设Mutex类型通过lock和unlock两组函数进行互斥器的锁定和解锁,可能我们希望和auto_ptr一样...
分类:
编程语言 时间:
2014-06-19 10:22:06
阅读次数:
302
(一)
下面代码:
tr1::shared_ptr pInv(createInvestment());
int daysHeld(const Investment* pi);
我们要调用daysHeld函数的话,就必须传递一个Investment指针,但是我们现在只有pInv对象,所以我们需要一个函数可将RAII class(本例为tr1::shared_ptr)对象转换为其所内含之原始资...
分类:
编程语言 时间:
2014-06-16 11:55:57
阅读次数:
250
(一)
假设有下面这两个函数:
int priority();
void processWidget(tr1::shared_ptr pw, int priority);
现在这样调用它:
processWidget(new Widget, priority());
但是!上面这种调用不能通过编译,因为tr1::shared_ptr构造函数需要一个原始指针,但是,这个构造函数是expl...
分类:
编程语言 时间:
2014-06-16 11:31:09
阅读次数:
296
AsyncTask 异步任务,可以很方便的在应用中执行下载等可能阻塞UI
Thread的任务,现在分析一下它的源码。首先列出AsyncTask的一些核心方法和域:public abstract class AsyncTask {
private static final int CORE_POOL....
分类:
其他好文 时间:
2014-06-16 06:23:14
阅读次数:
230
●boost锁的概述boost库中提供了mutex类与lock类,通过组合可以轻易的构建读写锁与互斥锁。▲mutex对象类mutex类主要有两种:boost::mutex,boost::shared_mutex,其中mutex有lock和unlock方法,shared_mutex除了提供lock和u...
分类:
其他好文 时间:
2014-06-15 23:47:04
阅读次数:
312
Eclipse运行时提示“Failed to load the JNI shared library /Java/jre6/bin/client/jvm.dll”的一个解决方案
出现这个问题的一个原因是eclipse需要的64位jdk,你的环境变量中配的是32位jdk
于是有人建议,重装个64位的jdk,把环境变量换成64位的jdk,但如果你的其它程序需要32位jdk的话,这肯定不是一个好办法...
分类:
编程语言 时间:
2014-06-15 20:07:52
阅读次数:
419
除了SQLite数据库外,SharedPreferences也是一种轻型的数据存储方式,它的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息。其存储位置在/data/data//shared_prefs目录下。SharedPreferences对象本身只能获取数据而不支持存储和修改,存储修改是通过Editor对象实现。实现SharedPreferences存储的...
分类:
移动开发 时间:
2014-06-15 18:34:02
阅读次数:
250
翻译注:共享内存是程序之间进行数据交互的最基本的方式,而由于windows和kithara rts本身为两个独立的系统,为了能够使两个不同系统之上的程序进行通信,那么就必须开辟一块内存区域用于数据共享。本文是对kithara rts官方原文进行的翻译,加入了本人的一些使用经验。Shared Memo...
分类:
其他好文 时间:
2014-06-14 09:01:50
阅读次数:
360
本文转载自:http://blog.sina.com.cn/s/blog_5203f6ce0100tiux.html要理解
java中String的运作方式,必须明确一点:String是一个非可变类(immutable)。什么是非可变类呢?简单说来,非可变类的实例是不能被修改的,每个实例中包含的信息...
分类:
编程语言 时间:
2014-06-12 12:51:49
阅读次数:
244