//对秒为单位延时的封装
void MySleep(LONG msec)
{
LARGE_INTEGER my_interval;
my_interval.QuadPart=-10 * 1000 * 1000; //1秒==1000毫秒==1000*1000微秒==1000*1000*1000纳秒
my_interval.QuadPart*=msec;
KeDelayExecutionThread(KernelMode,FALSE,&my_interval);
}
注意:
1.第三个参数的正负
微软网站描述如下:
Specifies the absolute or relative time, in units of 100 nanoseconds, for which the wait is to occur. A negative value indicates relative time. Absolute expiration times track any changes in system time; relative expiration times are not affected by system time changes.
翻译:
指定的绝对或相对的时间,在100纳秒为单位,等待发生。负值表示相对时间。绝对时间跟随系统时间的变化而变化;相对过期时间不受系统时间变化的影响。
2.时间的换算
皮秒,符号ps(英语:picosecond ).
1皮秒等于一万亿分之一秒(10-12秒)
1,000 皮秒 = 1纳秒
1,000,000 皮秒 = 1微秒
1,000,000,000 皮秒 = 1毫秒
1,000,000,000,000 皮秒 = 1秒
纳秒,符号ns(英语:nanosecond ).
1纳秒等于十亿分之一秒(10-9秒)
1 纳秒 = 1000皮秒
1,000 纳秒 = 1微秒
1,000,000 纳秒 = 1毫秒
1,000,000,000 纳秒 = 1秒
微秒,符号μs(英语:microsecond ).
1微秒等于一百万分之一秒(10-6秒)
0.000 001 微秒 = 1皮秒
0.001 微秒 = 1纳秒
1,000 微秒 = 1毫秒
1,000,000 微秒 = 1秒
毫秒,符号ms(英语:millisecond ).
1毫秒等于一千分之一秒(10-3秒)
0.000 000 001 毫秒 = 1皮秒
0.000 001 毫秒 = 1纳秒
0.001 毫秒 = 1微秒
1000 毫秒 = 1秒