GetTickCount存在的问题
kelvin 发布于 2023-03-03

GetTickCount是获取系统启动以来的毫秒数,对于间隔很短的时间控制,可能会有问题,例如下面的代码,在程序中每次输出当前的毫秒数,然后休眠10毫秒,

	for (int i = 0; i < 100; i++)
	{
		cout << GetTickCount() << endl;
		Sleep(10);
	}

结果如下,中间有些休眠10毫秒,读取的毫秒数一样:

5530453

5530468

5530484

5530500

5530500

5530515

5530531

5530531

5530546

5530562

5530578

5530578

5530593

5530609

5530609

5530625

5530640

5530656

5530656

5530671

5530687

5530703

5530718

5530718

5530734

5530750

5530765

5530765

5530781

5530796

5530796

5530812

5530828

5530828

5530843

5530859

5530875

5530875

5530890

5530906

5530921

5530921

5530937

5530953

5530953

5530968

5530984

5531000

5531000

5531015

5531031

5531046

5531046

5531062

5531078

5531093

5531093

5531109

5531125

5531171

5531187

5531203

5531218

5531281

5531312

5531312

5531328

5531343

5531359

5531390

5531421

5531437

5531500

5531593

5531671

5531703

5531718

5531734

5531750

5531765

5531781

5531796

5531796

5531812

5531828

5531843

5531843

5531859

5531875

5531875

5531890

5531906

5531921

5531921

5531937

5531953

5531953

5531968

5531984

5532000

 

kelvin
关注 私信
文章
92
关注
0
粉丝
0