100分求VB怎么写把一个进程分核的程序!
如图,就是把QQ进程里的关系设置里面些CPU全打上勾,让这些CPU都能平均承担负荷。当然我这也是举个例,QQ就是一个处理器在处理也不会卡电脑。希望有高人能写出个随意把处理...
如图,就是把QQ进程里的关系设置里面些CPU全打上勾,让这些CPU都能平均承担负荷。当然我这也是举个例,QQ就是一个处理器在处理也不会卡电脑。希望有高人能写出个随意把处理器对某个进程的这个勾勾上,或是取消勾勾的操作?谢谢高手了!
展开
5个回答
展开全部
有一个函数能够返回进程的亲缘性位屏蔽,它就是:GetProcessAffinityMask。有时你可能想要将进程中的一个线程限制到一组CPU上去运行。可以通过调用SetThreadAffinityMask,你就能为各个线程设置亲缘性屏蔽。
BOOL SetProcessAffinityMask( HANDLE hProcess,
DWORD_PTR dwProcessAffinityMask);
该函数的第一个参数指明了要被限制的进程,第二个参数是一个“位屏蔽”数据,里面的每个位表示一个CPU代号(从0开始标号),比如 0x00000001表示选中CPU 0,也就是“该进程中的线程”只能运行在CPU 0上了;0x00000005表示同时选中CPU 0和CPU 2。
BOOL GetProcessAffinityMask( HANDLE
hProcess,
PDWORD_PTR pdwProcessAffinityMask,
PDWORD_PTR pdwSystemAffinityMask);
该函数通过第二个参数返回指定进程的CPU的亲缘性信息,同时可以通过第三个参数返回系统亲缘性信息。系统亲缘性指明系统的哪些CPU可以处理线程,进程的亲缘性始终是系统亲缘性的子集。
DWORD_PTR SetThreadAffinityMask( HANDLE
hThread,
DWORD_PTR dwThreadAffinityMask);
该函数的第二个参数的意义和SetProcessAffinityMask函数中的第二个参数相同。也必须指明了一个正确的CPU子集,限制指定的线程只能运行在这个CPU子集上
BOOL SetProcessAffinityMask( HANDLE hProcess,
DWORD_PTR dwProcessAffinityMask);
该函数的第一个参数指明了要被限制的进程,第二个参数是一个“位屏蔽”数据,里面的每个位表示一个CPU代号(从0开始标号),比如 0x00000001表示选中CPU 0,也就是“该进程中的线程”只能运行在CPU 0上了;0x00000005表示同时选中CPU 0和CPU 2。
BOOL GetProcessAffinityMask( HANDLE
hProcess,
PDWORD_PTR pdwProcessAffinityMask,
PDWORD_PTR pdwSystemAffinityMask);
该函数通过第二个参数返回指定进程的CPU的亲缘性信息,同时可以通过第三个参数返回系统亲缘性信息。系统亲缘性指明系统的哪些CPU可以处理线程,进程的亲缘性始终是系统亲缘性的子集。
DWORD_PTR SetThreadAffinityMask( HANDLE
hThread,
DWORD_PTR dwThreadAffinityMask);
该函数的第二个参数的意义和SetProcessAffinityMask函数中的第二个参数相同。也必须指明了一个正确的CPU子集,限制指定的线程只能运行在这个CPU子集上
展开全部
分配CPU执行任务,是操作系统底层核心干的事,不管VB VC还是什么其它语言都无法干预,你的想法恐怕无法实现。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
分配的CPU来执行任务,它的核心是的操作系统底层干的,不管VB VC或什么其他语言可以不插手,你的想法可能无法实现。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以用: SetProcessAffinityMask API 自己搜下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个真心不懂,话说我的怎么是拒绝访问。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询