SetProcessAffinityMask的问题
BOOL WINAPI SetProcessAffinityMask(
_In_ HANDLE hProcess,
_In_ DWORD_PTR dwProcessAffinityMask
);//MSDN2015版
这里第二个参数有问题,因为DWORD_PTR is a pointer cast to a dword value
虽然DWORD_PTR跟DWORD是一样的, typedef DWORD DWORD_PTR
但意义上来说不一样,DWORD_PTR说明这个双字是一个地址,这个地址指向一个DWORD值
而DWORD说明这是一个DWORD值
所以,我在用这个函数的时候特意注意了
用了个
DWORD dwAffinityMask = 0x1 // 处理器0
DWORD_PTR dwptrAff = (DWORD)(&dwAffinityMask); SetProcessAffinityMask(hProcess,dwptrAff);
//结果返回错误,0x57, INVALID_PARAMETER
然后我就
DWORD dwAffinityMask = 0x1; SetProcessAffinityMask(hProcess,dwAffinityMask);
//这样竟然就成功了,根本不需要那样,所以我被MSDN文档的那个参数类型误导了!
然后我已经去MSDN网站上反馈错误了。
另外关联性就是一个DWORD 32位,从右往左,第i位代表处理器i, 1为存在/设置;0为不存在/取消
0x0000000f 处理器0~3
0x00000008 处理器3
0x00000005 处理器0和2
然后我发现自己错了,DWORD_PTR并没有我说的,我按照INT_PTR望文生义了,网上查了下,加_PTR似乎是说确保放得下一个指针,用于64和32移植相关问题的,所以就把他当DWORD用就完了,白想这么多。
SetProcessAffinityMask的问题的更多相关文章
- CPU占用率呈正弦实现,及实时输出进程和线程的CPU占用率
CPU占用率呈正弦实现,及实时输出进程和线程的CPU占用率 #include "stdafx.h" #include <windows.h> #include < ...
- Microsoft Win32 to Microsoft .NET Framework API Map
Microsoft Win32 to Microsoft .NET Framework API Map .NET Development (General) Technical Articles ...
- 英文不好也能快速"记忆" API
英文不好不要紧,把API函数导入打字练习类软件,即是练习打字速度,提高编程效率:也能短时间记忆API. 坚持每天打一遍,约2小时,连续打两周,会对API有很好的记忆,此方法是结合英文学习方法!以下是W ...
- windows核心编程---第六章 线程的调度
每个线程都有一个CONTEXT结构,保存在线程内核对象中.大约每隔20ms windows就会查看所有当前存在的线程内核对象.并在可调度的线程内核对象中选择一个,将其保存在CONTEXT结构的值载入c ...
- 获取CPUID等
unit CommonUnit; interface uses Windows, SysUtils, DateUtils; Const CPUVendorIDs: .. ] of string = ( ...
- GS初始化
开启GameServer模式 init函数,现在看看这个大函数干什么的 //这个init也是GameServerUI里面调的,这个线程其实就做了一些初始化的工作,其实这里面没有什么主不主线程,都是在一 ...
- 如何获取多核、多cpu系统中指定cpu的序列号
如何获取多核.多cpu系统中指定cpu的序列号作者:SkyJacker(转贴请保持完整并注明作者和出处)http://www.cnpack.orgCnPack IV QQ Group: 130970 ...
- CPU affinity 进程和线程的亲缘性
设置Processor Affinity 作用: 1.进程和线程的亲缘性(affinity),使进程或线程在指定的CPU(核)上运行.(比如程序A,在第4个核心上运行) 2.设置进程 或者 线程, 使 ...
- 《编程之美》学习笔记——指挥CPU占用率
问题: 写一个程序.让用户来决定Windows任务管理器(Task Manager)的CPU占用率(单核). 有下面几种情况: 1.CPU占用率固定在50%,为一条直线 2.CPU的占用率为一条直线, ...
随机推荐
- wkhtmltopdf 安装使用笔记(CentOS6)
1. 在官网下载安装文件. http://wkhtmltopdf.org/ 安装时如果提示某些库找不到的话,使用yum安装即可. 2. 命令行测试 $ wkhtmltopdf http://news. ...
- Java进行post和get传参数
http://www.cnblogs.com/zhuawang/archive/2012/12/08/2809380.html get和post方法 import java.io.BufferedRe ...
- jQuery选择器方式-用的不多的name选择器
id:$("#id") name:$("[name='name']") class:$(".class") element:$(" ...
- Struts 2开发基本流程
Struts 2工作流程 Struts2是一个基于MVC设计模式的Web开发框架, 正如官网上介绍的那样: ApacheStruts 2 is an elegant, extensible frame ...
- 名词王国里的死刑execution in the kingdom of nouns
http://www.cnblogs.com/bigfish--/archive/2011/12/31/2308407.htmlhttp://justjavac.com/java/2012/07/23 ...
- IE11 HTML Help ActiveX
<!--by: @qab--> <OBJECT id=HHCTRL type="application/x-oleobject" classid="cl ...
- 附录1· 初识Linux操作系统
编译 GCC汇编器 NASM链接 LD调试 GDBBochsBochs模拟器微内核 单内核=====================Linux特点=====================以下所有内 ...
- Openstack+Kubernetes+Docker微服务实践之路--服务发布
结合上文,我们的服务已经可以正常运行了,但它的访问方式只能通过服务器IP加上端口来访问,如何通过域名的方式来访问到我们服务,本来想使用Kubernetes的Ingress来做,折腾一天感觉比较麻烦,I ...
- Asp.Net完美隐藏服务器信息
首先在Global.asax.cs里增加: protected void Application_PreSendRequestContent(object sender, EventArgs e){H ...
- Strus2学习记录整理【持续更新】
Strus2学习记录 以后的Strus2学习记录地址都会集合在这里,希望大家可以一起愉快学习,相互学习! Exception: 地址:http://www.cnblogs.com/gcs1995/p/ ...