上一页 1 ··· 52 53 54 55 56 57 58 59 60 ··· 78 下一页
摘要: COM接口指针很危险,因为使用过程中需要每一个使用者都要严格并且正确的AddRef和Release,一旦出现问题,就会造成对象不能被正常释放,或者对象被重复删除,造成程序崩溃。所以使用COM接口,必须小心翼翼才行。但是,即使所有的代码中,都正确的AddRef和Release,也不一定能保证万无一失,... 阅读全文
posted @ 2013-09-30 08:18 毛毛虫的薄刻 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 本文的目的是为刚刚接触COM的程序员提供编程指南,并帮助他们理解COM的基本概念。内容包括COM规范简介,重要的COM术语以及如何重用现有的COM组件。本文不包括如何编写自己的COM对象和接口。 COM即组件对象模型,是Component Object Model 取前三个字母的缩写,这三个字母在... 阅读全文
posted @ 2013-09-30 08:17 毛毛虫的薄刻 阅读(485) 评论(0) 推荐(0) 编辑
摘要: 1. 首先我们来看HeapAlloc:MSDN上的解释为:HeapALloc是从堆上分配一块内存,且分配的内存是不可移动的(即如果没有连续的空间能满足分配的大小,程序不能将其他零散的 空间利用起来,从而导致分配失败),该分配方法是从一指定地址开始分配,而不像GloabalAlloc是从全局堆上分配,... 阅读全文
posted @ 2013-09-29 08:48 毛毛虫的薄刻 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 现在流行的进程线程同步互斥的控制机制,其实是由最原始最基本的4种方法实现的。由这4种方法组合优化就有了.Net和Java下灵活多变的,编程简便的线程进程控制手段。 这4种方法具体定义如下 在《操作系统教程》ISBN 7-5053-6193-7 7-5053-6193-7 一书中可以找到更加详细的解... 阅读全文
posted @ 2013-09-29 08:48 毛毛虫的薄刻 阅读(136) 评论(0) 推荐(0) 编辑
摘要: “信号量内核对象”用于对资源进行计数。 在信号量内核对象内部,和其他内核对象一样,有一个使用计数,该使用计数表示信号量内核对象被打开的次数。 信号量内核对象中还有两个比较重要的数据,分别表示最大资源数和当前资源数。最大资源数表示能够管理的资源的总数,当前资源数表示目前可以被使用的资源数量。 ... 阅读全文
posted @ 2013-09-29 08:45 毛毛虫的薄刻 阅读(95) 评论(0) 推荐(0) 编辑
摘要: NOTE0——何为上下文切换每一个线程都有一个上下文。后者保存在线程的内核对象中。这个上下文反映了线程上一次执行时cpu寄存器的状态。大约每隔20ms(GetSystemTimeAdjustMent函数第二个参数的返回值),windows都会查看所有当前存在的线程内核对象,这些对象中只有一些是认为可... 阅读全文
posted @ 2013-09-29 08:44 毛毛虫的薄刻 阅读(196) 评论(0) 推荐(0) 编辑
摘要: Note 0:了进程实际是由两个组件组成的:一个进程内核对象和一个地址空间.类似地,线程也由两个组件组成:一个是线程的内核对象,操作系统用它管理线程.内核对象还是系统用来存放线程统计信息的地方.一个线程堆栈,用于维护线程执行时所需的所有函数参数和局部变量.Note 1:进程是有惰性的.进程从来不执行... 阅读全文
posted @ 2013-09-29 08:43 毛毛虫的薄刻 阅读(118) 评论(0) 推荐(0) 编辑
摘要: Note 0:Windows提供了一个作业(job)内核对象,它允许你将进程组合在一起并创建一个"沙箱"来限制进程能够做什么.最好将作业对象想象成一个进程容器.但是,即使作业中只包含一个进程,也是非常有用的,因为这样可以对进程施加平时不能施加的限制.Note 1:以下的StartRestricted... 阅读全文
posted @ 2013-09-28 08:44 毛毛虫的薄刻 阅读(137) 评论(0) 推荐(0) 编辑
摘要: Note 1:在Windows Vista中,系统DLLs是在进程地址空间的随机地址加载的.所以,不要像在Windows XP中那样将PEB的地址硬编码为0x7ffdf000.相反,你需要调用NtQueryInformationProcess,并传递ProcessBasicInformation作为... 阅读全文
posted @ 2013-09-28 08:44 毛毛虫的薄刻 阅读(123) 评论(0) 推荐(0) 编辑
摘要: Note 1:一个线程可以调用以下两个函数来获取和设置其进程的当前驱动器和目录:DWORD GetCurrentDirectory(DWORD cchCurDir,PTSTR pszCurDir);BOOL SetCurrentDirectory(PCTSTR pszCurDir);注意WinDef... 阅读全文
posted @ 2013-09-28 08:43 毛毛虫的薄刻 阅读(110) 评论(0) 推荐(0) 编辑
上一页 1 ··· 52 53 54 55 56 57 58 59 60 ··· 78 下一页