好的,所以我想知道CMD中所有不同类型的延迟是什么。 以下是我可以命名的一些内容:
SLEEP 1
ping 192.0.2.2 -n 1 -w 1 > nul
choice /d y /t 1 > nul
mkdir Folder
cd Folder
tree
最短的延迟时间是多少? 感谢。
答案 0 :(得分:1)
我认为最短的精确时间是10毫秒,纯批次。
检查%time%
变量(分辨率为10毫秒)。
wmic
或其他外部程序的缺点是,加载和启动它们的时间通常比您想要等待的时间长。
答案 1 :(得分:0)
如果您想要一个非常可预测的短延迟,您可以编写一个调用nanosleep的小命令行实用程序。
#include <stdio.h>
#include <time.h>
#include <stdint.h>
#include <sys/time.h>
int main(int argc, char *argv[]) {
struct timespec ts;
// We want to sleep for 40ms
ts.tv_sec = 0;
ts.tv_nsec = 40L * 1000000L; // 1ms = 1 million nanoseconds
nanosleep(&ts, NULL);
return 0;
}
当然,通过从命令行获取延迟,可以使实用程序更加灵活。
编辑:正如评论者指出的那样,标准MS编译器中没有nanosleep。在那里,sleep可以作为替代。