在我的模拟项目中,我通过Runnable对象模拟Web请求,这些对象要么睡眠指定的毫秒,要么让处理器忙于旋转。但是由于Thread.sleep()的不精确性,模拟http请求的响应时间比预期的要多一些,我想用其他技术替换这个暂停。我不能使用旋转因为它会吃cpu-cycle我也需要通过暂停来模拟I / O限制。我已经搜索了睡眠的替代品,除了Thread.sleep,旋转或等待之外,我找不到暂停java。我不能使用等待,因为它也是不精确的。也无法保证等待的确切时间。在this问题的答案#2中,Peter Lawrey谈到了数据驱动的模拟时钟,但我也在搜索它,但没有在java中找到任何教程或其实现。有没有人可以在java中给出一个简单的例子我如何实现自己的dta驱动模拟时钟,这样我就可以摆脱Thread.sleep()的麻烦。