- 博客(7)
- 资源 (9)
- 收藏
- 关注
原创 C#多线程同步技术
我们可以在计算机上运行各种计算机软件程序。每一个运行的程序可能包括多个独立运行的线程(Thread)。 线程(Thread)是一份独立运行的程序,有自己专用的运行栈。线程有可能和其他线程共享一些资源,比如,内存,文件,数据库等。 当多个线程同时读写同一份共享资源的时候,可能会引起冲突。这时候,我们需要引入线程“同步”机制,即各位线程之间要有个先来后到,不能一窝蜂挤上去
2011-06-25 16:02:00 4972
原创 C#内存管理
C#的一个优点就是程序员不需要担心具体的内存管理,但是还是需要理解后台内存管理时发生的事情。 1、值数据类型 我们知道值数据类型存储在内存中的一个称为堆栈的区域中。我们不知道堆栈在地址空间在什么地方,这些信息在进行C#开发时也是不需要知道的。堆栈指针(操作系统维护的一个变量)表示堆栈中的下一个自由空间的地址。程序第一次运行时,堆栈指针指向为堆栈保留的内存块末尾。堆栈实际
2011-06-24 17:47:00 1627
原创 COM三大接口 -> IUnknown、IClassFactory、IDispatch
COM组件有三个最基本的接口类,分别是IUnknown、IClassFactory、IDispatch。 1、IUnknownCOM规范规定任何组件、任何接口都必须从IUnknown继承。IUnknown包含三个函数,分别是 QueryInterface、AddRef、Release。这三个函数是无比重要的,而且它们的排列顺序也是不可改变的。QueryInterface用于查询
2011-06-23 20:40:00 2537
转载 在COM中使用数组参数
关键字:DCOM、数组、自定义类型、Marshal、SafeArray、ICollection 本文讲述在COM的接口中使用数组作为参数的三种方法。它们分别是:数组指针、SafeArray和ICollection。文章分析了各种方法的优缺点。本文的目的不是描述COM的基本原理和开发方法。为了能够更好的理解本文中的内容,读者需要具备基本的COM编程知识。1 相关的基本概念 在COM
2011-06-23 09:40:00 7502
原创 几种算法思想
1、递归法 所谓递归,就是指如果需要求解当前状态就需要求解其依赖的迁移状态。 一般来说,递归需要有边界条件、递归前进段和递归返回段。当边界条件不满足时,递归前进;当边界条件满足时,递归返回。 采用递归描述的算法通常有这样的特征: 1)为求解规模为N的问题,设法将它分解成规模较小的问题; 2)然后从这些小问题的解方便地构造出大问题的解,并且这些规模较小的问题也能采用同样的分解和综
2011-06-20 13:46:00 8359
原创 C++内存管理
参考并整理于http://blog.csdn.net/zhanghefu/archive/2009/12/14/5003407.aspx1、内存分配1.1 分配方式简介 在C++中,内存分成5个区,他们分别是堆、栈、自由存储区、全局/静态存储区和常量存储区。也有认为分为3个区:堆、栈、静态存储区,把只有存储区作为堆,全局/静态存储区和常量存储区统称为静态存储区。 栈,
2011-06-17 18:49:00 1671
原创 C++标准模板库中的auto_ptr
标准模板库源代码:namespace std{ // 特殊类,用于non-const auto_ptrs的拷贝和赋值 // 由于auto_ptr的拷贝构造、赋值运算都需要使用引用传递参数(否则会照成指针所有权并没有真正移交) // 因此需要支持当临时右值作为拷贝和赋值的功能 // auto_ptr_ref设计目的:用来实现上述情形,如: // auto_ptr ap1
2011-06-15 15:42:00 2200
AMR音频文件播放器
2012-03-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人