![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Windows程序设计
文章平均质量分 78
xiaoyun8822
这个作者很懒,什么都没留下…
展开
-
OS应用程序的启动过程和进程的创建
一.进程和线程1. 进程是正在运行的程序,它拥有自己的虚拟空间,拥有自己的代码、数据和其他系统资源;一个进程也拥有一个或多个运行在其内的线程。2. 线程是进程内执行代码的独立实体。操作系统创建进程后,会创建一个线程执行进程中的代码,通常这个线程称为主线程。3. 进程和程序的区别:程序时一连串静态的指令,而进程是一个容器,包含了一系列运行在这个程序实例上下文原创 2012-09-03 15:34:09 · 1383 阅读 · 0 评论 -
GDI基本图形
GDI基本图形Microsoftwindows 的图形设备接口(Graphiccs Device Interface GDI),使应用程序在视频显示器和打印机上使用图形和格式化文本;一. 设备环境1. DC是Windows内部的使用的数据结构,它定义了GDI函数在显示设备特定区域的工作方式,对显示器来说,它代表屏幕上的一块区域。Hdc = ::BeginPaint(h原创 2012-09-12 21:58:46 · 597 阅读 · 0 评论 -
动态规划
动态规划 算法总体思想 动态规划算法与分治法类似,其基本思想也是将待求解问题分解成若干个子问题。但是经分解得到的子问题往往不是互相独立的。不同子问题的数目常常只有多项式量级。在用分治法求解时,有些子问题被重复计算了许多次。如果能够保存已解决的子问题的答案,而在需要时再找出已求得的答案,就可以避免大量重复计算,从而得到多项式时间算法。动态规划基本步骤:(1)找出最转载 2012-09-11 19:28:18 · 557 阅读 · 0 评论 -
MFC windows图形界面基础知识1
第一个窗口程序1. 每个GUI应用程序至少要创建一个窗口,成为主窗口,它作为用户与应用程序间的主界面来提供服务。2. 程序的入口:1) 程序实例:int APIENTRY_tWinMain(HINSTANCE hInstance,//本模块实例句柄 HINSTANCE hPrevInstance,//没用原创 2012-09-10 22:01:41 · 2510 阅读 · 0 评论 -
线程局部存储(TLS)
一. 线程局部存储1. 线程局部存储(TLS)是简单的存储线程局部数据的系统。2. 利用TLS可以为每个进程关联一个数据。一般来说,为线程分配TLS索引在主线程中完成,而分配的索引值应保存在全局变量中。3. 使用到的函数介绍:1) 主线程调用TlsAlloc为线程局部存储分配索引;2) 每个线程调用TlsSetValue和T原创 2012-09-06 11:31:19 · 557 阅读 · 0 评论 -
线程同步
同步可以保证在同一时刻只有一个线程对某个共享资源有控制权。共享资源包括全局变量、公共数据成员或句柄等。一.临界区对象实现同步。(1) 为什么要线程同步,可以参见下面的小例子;#include "stdafx.h"#include "process.h"ULONG gCount1 = 0,gCount2 = 0;BOOL bRet = 1;UINT WINAPI Thr原创 2012-09-05 16:27:29 · 440 阅读 · 0 评论 -
线程的优先级
1. 每个线程都有一个优先级,取值为0~31;2. Windows调度线程的原则:只要高优先级的进程可调度,就不会为低优先级的线程分配CPU;3. 线程的相对优先级就是线程的真实优先级,与其所在的进程优先级无关。4. 要改变线程的优先级,要调用函数:BOOL WINAPI SetThreadPriority( __in HANDLE原创 2012-09-05 11:33:24 · 526 阅读 · 0 评论 -
(1)win32程序执行单元--多线程
一.线程的创建1) 基本概念1. 所谓所线程:主线程在运行过程中也可以创建新的线程。同一个进程中的这些线程可以共享进程资源,如全局变量、句柄等。各个线程也有自己的私有堆栈用于保存私有数据。2. 线程分工:主线程接收用户的输入,显示运行结果,而新线程用于处理长时间的操作,如读写文件,访问网络等。3. 线程入口点函数:主线程main,其他线程 DOWRD原创 2012-09-04 15:46:26 · 494 阅读 · 0 评论 -
系统进程信息的获取和当前进程的终止
1. 获取系统所有进程快照信息:1)使用CreateToolhelp32Snapshot给系统内执行的进程拍快照;里面有进程名称,ID,和父进程ID等信息;2)使用Process32Firest和Process32Next函数遍历快照记录的列表。 dwFlags的取值有:TH32CS_SNAPHEAPLIST 枚举th32Process原创 2012-09-03 16:39:25 · 2089 阅读 · 0 评论 -
框架管理基础之内存映射
一. 映射的概念:定义域中x的任一取值,都有惟一的y值与之对应。在处理窗口消息的时候,要通过钞口王居士WndProc传来的窗口句柄的值得到此窗口对应的CWnd指针,然后用这个指针去调用CWnd类的接口成员。二.内存的分配方式:1. 指针到指针的影射结构:struct CAssoc{ CAssoc * pNext; vid *key; void * value;};2.原创 2012-09-19 21:26:04 · 684 阅读 · 0 评论