2010年3月11日
摘要: 此篇为操作系统的学习、回忆篇:一、进程 1、意义:只是一些资源的集合。 2、进程间通讯的方法:共享存储系统、消息传递系统、管道:以文件系统为基础。 3、进程间同步的策略:原子操作、信号量机制、自旋锁、管程、会合、分布式系统。二、线程 1、cpu和内存真正的使用者。 2、线程同步的方法:信号量、临界区、互斥量、事件(windows编程)。 3、线程的状态与变换: 就绪:除了CPU的时间片,其他资源都... 阅读全文
posted @ 2010-03-11 22:21 漫步沙洲中 阅读(1634) 评论(0) 推荐(0) 编辑
摘要: 但是有个问题,就是存在个问题:1、容易造成内存泄漏和不能正确析构执行 原因,系统不知道什么时候可以删除m_pInstance这个指针所指向的对象。 解决办法: a、自己来删除,delete掉。 b、定义一个static的对象而不是指针:具体实现参考如下:这也存在一个小问题:使用局部静态变量,非常强大的方法,完全实现了单例的特性,而且代码量更少,也不用担心单例销毁的问题。但使用此种方法也会出现问题,... 阅读全文
posted @ 2010-03-11 15:15 漫步沙洲中 阅读(213) 评论(0) 推荐(0) 编辑
摘要: 以下内存是转载:源地址:http://blog.csdn.net/yueyahe/archive/2006/05/15/729126.aspx一、可重入函数1)什么是可重入性?可重入(reentrant)函数可以由多于一个任务并发使用,而不必担心数据错误。相反,不可重入(non-reentrant)函数不能由超过一个任务所共享,除非能确保函数的互斥(或者使用信号量,或者在代码的关键部分禁用中断)。... 阅读全文
posted @ 2010-03-11 15:02 漫步沙洲中 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 以前也了解过static,知道它的生命周期是全局的,可以控制作用域。但却没有一个系统的归纳。现在我尝试归纳如下: 一:修饰变量,静态存储 一个static的变量,在编译的时候就被初始化了(如果没有主动初始化,会被初始化为0,这一点也被用于初始化稀疏矩阵),然后放在静态存储区中。 顺便补充一下存储区的知识:程序中的存储区分为静态存储区和堆栈。前者用于放两种数据:全局变量和static变量,这样只会被... 阅读全文
posted @ 2010-03-11 14:38 漫步沙洲中 阅读(251) 评论(0) 推荐(0) 编辑