我正在为我的程序编写测试代码。我需要代码每秒运行 10000 次。我的解决方案是:
for(int i = 0; i < 1000; ++i) {
for(int j = 0; j < 10; ++j) {
// do something here. Maybe ++k or some code else
}
usleep(1);
}
事实证明,时间超过 1 秒。所以我必须调整 1000 和 100 以适应要求。这不是一个好习惯:当运行时间发生变化时,我必须更改代码。
有任何想法吗?
更新:
该程序在 Linux 上运行。我编写了一个消息队列。像往常一样,它有生产者和消费者。我想全程测试。我需要测试代码以很小的间隔发送几个消息(首选 100µs)。
如果我在没有睡眠的情况下发送所有消息,则消息队列将已满,并且在整个测试过程中都不起作用。