![为什么 bash 时间比 GNU 时间更精确?](https://linux22.com/image/20062/%E4%B8%BA%E4%BB%80%E4%B9%88%20bash%20%E6%97%B6%E9%97%B4%E6%AF%94%20GNU%20%E6%97%B6%E9%97%B4%E6%9B%B4%E7%B2%BE%E7%A1%AE%EF%BC%9F.png)
buitin bash 命令time
提供毫秒精度的执行,而 GNU time
(通常 /usr/bin/time)提供厘秒精度。系统times(2)
调用以时钟为单位给出时间,100 个时钟 = 1 秒(通常),因此精度类似于 GNU time
。那么问题是 bashtime
使用什么来使其更精确?
答案1
经过一些核心 bash 代码检查后,我发现 bashtime
使用getrusage()
而 GNUtime
使用times()
.getrusage()
由于微秒分辨率,精度要高得多。