Windows API
网络函数 WNetAddConnection 创建同一个网络资源的永久性连接 WNetAddConnection2 创建同一个网络资源的连接 WNetAddConnection3 创建同一个网络资源的连接 WNetCancelConnection 结束一个网络连接 WNetCan...
网络函数 WNetAddConnection 创建同一个网络资源的永久性连接 WNetAddConnection2 创建同一个网络资源的连接 WNetAddConnection3 创建同一个网络资源的连接 WNetCancelConnection 结束一个网络连接 WNetCan...
概述 在用户模式下进行线程同步的最大好处就是速度非常快。 与用户模式下的同步机制相比,内核对象的用途要广泛的多。实际上,内核对象的唯一缺点就是性能。 对线程同步来说,内核对象的每一种要么处于触发状态,要么处于未触发状态。 Microsoft为每种对象创建了一些规则,规定如何在这两...
ATL下载 ATL 作为微软官方库,源码随 Visual Studio 安装包 默认集成 正确代码结构 接口定义(使用 IDL) 实现类(使用 ATL) 对象创建宏 客户端调用示例 完整示例 项目结构 ExampleComponent.idl 在 Visual Studio 中创...
概述 当所有线程都能独自运行而不需要相互通信的时候,Microsoft Windows将进程最佳运行状态。 系统中的所有线程必须访问系统资源,比如堆、串口、文件、窗口以及无数其他资源。 如果一个线程独占了对某个资源的访问,那么其他线程就无法完成它们的工作。 以下两种基本情况下,线...
概述 是 Windows 操作系统中的虚拟内存页面文件,其作用、管理方式及对系统的影响是系统性能优化的核心内容 核心作用 物理内存的扩展 当物理内存(RAM)不足时,Windows 会将不活跃的数据从 RAM 转移到 pagefile.sys 中,释放 RAM 给当前活跃程序使用...
编译相关 #pragma init_seg 概述 是微软C++编译器中的一个编译指令,专门用于精细控制全局静态对象(包括静态变量)的构造和析构顺序 在解决复杂的初始化依赖或DLL加载问题时非常有用 语法 优先级 compiler 最高优先级 此组别的对象最先构造,最后析构 通常保...
关键段 概述 critical section是一小段代码,它在执行之前需要独占对一些共享资源的访问权。 这种方式可以让多行代码以“原子方式”来对资源进行操控。 这里的原子方式,是指除了当前线程之外,没有其他任何线程会同时访问该资源。 当然,系统仍然可以暂停当前线程去调度其他线程...
概述 在调度程序给另一个可调度线程分配CPU之前,CPU可以运行一个线程大约20ms。 这是在所有线程的优先级都相同的情况下。实际上,线程间的优先级是不同的。 每个线程都会被赋予0(最低)到31(最高)的优先级数。 当系统确定给哪个线程分配CPU时,它会首先查看优先级为31的线程...
cpp 数据模型和数据类型大小 C++ 数据类型的大小并不是完全固定的,而是由数据模型(Data Model)决定的 不同的操作系统和编译器组合会采用不同的数据模型 为什么有不同数据模型 Windows 选择 LLP64 是为了最大化 32 位代码兼容性 保持 long 为 4 ...
作业 概述 作业可以让我们将一组进程当作一个实体来处理。 Windows提供的作业(job)内核对象,允许我们将进程组合在一起并创建一个“沙箱”来限制进程能够做什么。 我们可以创建一个只包含一个进程的作业,来对进程施加平时不能施加的限制。 只含一个进程的作业 这么做的目的是为了对...
搜索当前分类