Windows Api学习笔记-设置线程的优先级

简介: #include #include using namespace std; DWORD WINAPI ThreadIdle(LPVOID lpParam) { int i=0; while(i++
#include <windows.h>
#include <iostream>
using namespace std;

DWORD WINAPI ThreadIdle(LPVOID lpParam)
{
	int i=0;
	while(i++<10)
	{
		cout<<"Idel thread is running"<<endl;
	}
	return 0;
}

DWORD WINAPI ThreadNormal(LPVOID lpParam)
{
	int i=0;
	while(i++<10)
	{
		cout<<"Normal thread is running"<<endl;
	}
	return 0;
}

int main()
{
	DWORD dwThreadId;
	HANDLE h[2];
	h[0] = ::CreateThread(
		NULL,//线程的安全性
		0,//指定线程堆栈大小
		ThreadIdle,//线程函数
		NULL,//线程函数的参数
		CREATE_SUSPENDED,//指定创建线程后是否立即启动,不立即启动
		&dwThreadId//内核给新生成的线程分配的线程ID
		);
	::SetThreadPriority(h[0],THREAD_PRIORITY_IDLE);//把线程的属性设置为空闲,
	::ResumeThread(h[0]);//恢复线程运行
	h[1] = ::CreateThread(
		NULL,
		0,
		ThreadNormal,
		NULL,
		0,
		&dwThreadId
		);//创建的线程默认优先级为Normal
	::WaitForMultipleObjects(
		2,//要等待内核对象的数量
		h,//句柄数组
		TRUE,//是否要等待所有内核对象都成为受信状态
		INFINITE//无限期等待下去
		);
	::CloseHandle(h[0]);
	::CloseHandle(h[1]);
	char a;
	cin >> a;

}
目录
相关文章
|
2月前
|
算法 Unix 调度
【Qt 线程】深入探究QThread线程优先级:原理、应用与最佳实践
【Qt 线程】深入探究QThread线程优先级:原理、应用与最佳实践
36 0
|
2月前
|
算法 Unix Linux
Linux与Qt线程优先级的对应关系:一次全面解析
Linux与Qt线程优先级的对应关系:一次全面解析
25 0
|
4月前
|
关系型数据库 MySQL API
|
1月前
|
调度 Windows
|
2月前
|
资源调度 算法 Linux
Linux进程/线程的调度机制介绍:详细解析Linux系统中进程/线程的调度优先级规则
Linux进程/线程的调度机制介绍:详细解析Linux系统中进程/线程的调度优先级规则
186 0
多线程学习笔记(一)
创建线程有3种方式:继承Thread类、实现Runnable接口或Callable接口。继承Thread类时,重写run()方法并调用start()启动线程。实现Runnable接口时,实现run()方法,通过Thread的target创建线程对象并用start()启动。
|
4天前
|
Java C++
多线程学习笔记(二)
1. 子线程先执行:启动子线程后立即调用`join()`,主线程会等待子线程完成。 `suspend()`方法。 3. `synchronized` vs `Lock`:前者是关键字,后者是接口;前者可用在代码块和方法,后者在代码中显式;前者自动释放锁,后者需`finally`释放;前者无超时/中断控制,后者可设定;前者非公平,后者可公平/不公平,且支持读写锁。 4. `synchronized`底层实现:基于 Monitor 模型,JVM层面的锁定机制,通过 monitors 和 monitorenter/monitorexit 指令实现。
|
6天前
|
API Python
记录openai官网关于Setup your API key for a single project(为单个项目设置API 可以)的错误(2023/11/24)
记录openai官网关于Setup your API key for a single project(为单个项目设置API 可以)的错误(2023/11/24)
18 0
|
1月前
|
XML API 数据格式
【Qt 学习笔记】QWidget的enable属性 | API的介绍
【Qt 学习笔记】QWidget的enable属性 | API的介绍
29 0
|
4月前
|
API Python Windows
python3应用windows api对后台程序窗口及桌面截图并保存的方法
python3应用windows api对后台程序窗口及桌面截图并保存的方法
119 1