06 2017 档案

摘要:/*对两个线程进行轮流操作。 一个线程输出1-100 第二个线程输出101-200结果:1 101 2 102 。。。。。。。*/ 第一种情况: 可以看出,以上的操作只是普通的输出,而且是按1-200输出。 第二种情况: hThead[0] = CreateThread(nullptr, 0, Th 阅读全文
posted @ 2017-06-27 23:51 gd_沐辰 阅读(2922) 评论(0) 推荐(0) 编辑
摘要:当一个线程启动时,会做什么操作:1.创建内核对象2.使用计数3.ExitCode4.Signaled5.Context 线程上下文 存储了CPU的当前状态 IP(指令寄存器)\SP(栈寄存器)6.线程去进程当中申请一块内存,作为当前线程的栈6.线程将lParam、lpStarAddress(线程的入 阅读全文
posted @ 2017-06-27 23:49 gd_沐辰 编辑
摘要:线程与线程之间也是互相独立的,互不干扰的。由于每一线程都有自己的堆栈,所以一个线程在一定条件下可以访问另一个线程。 线程是指程序的一个指令执行序列,WIN32 平台支持多线程程序,允许程序中存在多个线程。 在单 CPU 系统中,系统把 CPU 的时间片按照调度算法分配给各个线程,因此各线程实际上是分 阅读全文
posted @ 2017-06-20 20:11 gd_沐辰 阅读(120) 评论(0) 推荐(0) 编辑
摘要:所在目录:当前程序运行的目录。比如:在VS调试程序时,所在目录就是源文件所在的目录。在debug直接运行.exe是,所在目录就是debug所在的目录。 GetCurrentDirectory();获取所在目录。 函数原型:DWORDGetCurrentDirectory( DWORD nBuffer 阅读全文
posted @ 2017-06-20 20:10 gd_沐辰 阅读(344) 评论(0) 推荐(0) 编辑
摘要:程序、进程、线程的关系:以一个比喻来说明:程序就好比一间工厂的蓝图、设计图;进程就是这间工厂的实体;线程就是这间工厂的员工。 结论:由此可以看出,进程(工厂)是静态的,任何操作都是由线程(员工)去完成。注意:进程与进程之间是互相独立的,互不干扰的。同理,线程与线程之间也是互相独立的,互不干扰的。(进 阅读全文
posted @ 2017-06-20 20:07 gd_沐辰 阅读(1848) 评论(0) 推荐(0) 编辑
摘要:众所周知,UAC是User Account Control的缩写,其中文翻译为用户帐户控制,其含义可定义为权限令牌。 那么UAC的作用是什么?在计算机扮演一个怎样的角色? 首先,在开始这里输入'UAC'就会出现以下这个界面 从上图可以看到,是一个权限的界面,按程度分“始终提醒” “从不提醒”。 还有 阅读全文
posted @ 2017-06-20 15:05 gd_沐辰 阅读(379) 评论(0) 推荐(0) 编辑
摘要:IO完成端口也是一个内核对象。调用以下函数创建IO完成端口内核对象。 函数参数: hFile 就是设备句柄。 hExistingCompletionPort 是与设备关联的IO完成端口句柄。为NULL时,系统会创建新的完成端口。 dwCompletionKey 是一个对我们有意义的值,但是操作系统并 阅读全文
posted @ 2017-06-11 23:35 gd_沐辰 阅读(674) 评论(0) 推荐(0) 编辑