14.1 系统信息 函数用户检索与主机相关的值,只需要传递 结构体的地址即可。 对于既定的系统,这些值不会改变,调用一次即可。 表示CPU的页面大小,x86的CPU上,这个值是 。 每个进程可用地址空间的最小内存地址。 每个进程可用地址空间的最大内存地址。 保留地址控件的分配粒度,只要是Window ...
线程池的使用 多线程应用程序很难设计,有两大难点,一是要管理线程的创建和撤销,再就是要对线程访问资源时实施同步。同步的工具有几个了。为了应对线程频繁地创建和撤销,线程池这个方案被放上了台面。Windows2000提供了一些新的线程池函数,使得线程的创建、撤销和基本管理更加容易。线程池的实现不拘一格, ...
分类:
编程语言 时间:
2020-03-06 23:43:02
阅读次数:
85
Windows被设计成一个抢占式的操作系统,用某种算法来确定哪些线程应该在何时被调度和运行多长时间。每隔20ms左右,Windows就要查看当前所有线程的内核对象,找到可以被调度的一个,将它加载到CPU寄存器中。这个操作成为上下文切换。Windows实际上保存了一个记录,说明每个线程获得了多少次运行 ...
分类:
编程语言 时间:
2020-02-29 00:23:38
阅读次数:
81
线程也是有两部分组成的: 线程的内核对象,操作系统用来管理线程和统计线程信息的地方。 线程堆栈,用于维护现场在执行代码的时候用到的所有函数参数和局部变量。 进程是线程的容器,如果进程中有一个以上的线程,这些线程将共享进程的地址空间,操作空间中的数据,执行相同的代码,对相同的数据操作,甚至内核对象句柄 ...
分类:
编程语言 时间:
2020-02-25 17:35:08
阅读次数:
82
内核对象是个比较难理解的概念,问题的根源就在于即使是《核心编程》书中也没有说清楚它的定义,只是不停地举例和描述它的性质,还有如何使用。 盲人摸象,难见全貌。只能尽可能列举它的性质,注意使用了。 引用计数(书中的说法是使用计数)就是内核对象的一个很关键的性质。由于内核对象的拥有者是内核而不是进程,所以 ...
Windows处理错误靠的是API的返回值,类型不止一种种: VOID,函数不可能失败,Windows API的返回值很少是这个情况。 BOOL,如果函数失败,则返回值是0,否则返回是非零值。不要测试返回值是否为TRUE! HANDLE,如果函数失败,则返回值通常是NULL,否则返回一个HANDLE ...
前言 我们在用Python进行机器学习建模项目的时候,每个人都会有自己的一套项目文件管理的习惯,我自己也有一套方法,是自己曾经踩过的坑踩过的雷总结出来的,现在在这里分享一下给大家,因为很多伙伴是接触Python编程入门不久,也希望大家少走弯路,多少有些地方可以给大家借鉴。 每天都有程序员定时讲解Py ...
分类:
编程语言 时间:
2020-02-21 19:55:23
阅读次数:
74
Spring IoC Bean 实例化(二)源码分析 [toc] Spring 核心编程思想目录: 特别声明: Bean 完整创建过程,包括实例化、依赖注入、初始化阶段 。本文中 Bean 实例化指的是 Bean 对象的创建的第一阶段 实例化,不包括之后的属性注入、初始化。为了避免混淆,在此做一个约 ...
分类:
编程语言 时间:
2020-02-20 19:57:45
阅读次数:
72
Spring(06)IOC 依赖注 [toc] Spring 核心编程思想目录: 1. 依赖注入的模式和类型 1.1 依赖注入模式 手动模式 配置或者编程的方式,提前安排注入规则 XML 资源配置元信息 Java 注解配置元信息 API 配置元信息 自动模式 实现方提供依赖自动关联的方式,按照內建的 ...
分类:
编程语言 时间:
2020-02-14 18:30:42
阅读次数:
101
启动以管理员身份运行有2中方式。1.筛选令牌。意思就是,默认情况下,一个进程启动时,会与筛选令牌进行关联,所以权限受限,但是最终用户可以通过右击图标菜单,以run as admin来运行程序。然后就会有UAC的安全提示框提示是否继续。2.提升进程的权限,VS开发过程。判断一个进程是以提升的权限来启动 ...