mysql - 令人困惑的时间输出

标签 mysql ruby unix time

此命令从 MySQL 获取一些数据,然后对其进行操作。为什么“真实”时间比“用户”时间高这么多?

>time ./command.rb

real    45m45.457s
user    3m36.478s
sys     0m28.226s

为了澄清 - 我理解真实、用户和系统输出之间的区别。但是,我对为什么会有如此大的差异感到困惑。我正在运行的机器几乎没有其他使用 CPU 的东西,而且我的命令中没有任何线程。它所做的只是获取数据。复杂的 MySQL 语句会不会是造成这种差距的原因?

最佳答案

user 和 sys 报告 cpu 繁忙的时间。 CPU 在任何事情(如网络或磁盘 I/O)上被阻塞时不会忙碌。尝试,例如,“time sleep 1”或“time dd if=/dev/zero of=/dev/null bs=1024 count=1000000”以查看差异。第一个只是 block ,第二个将包括大量 CPU 使用。

关于mysql - 令人困惑的时间输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1849084/

相关文章:

php - 避免特定时间间隔的重复数据

php - MySQL 比较和删除大表~30m 记录

mysql - 如果只知道月份和年份,存储在 DATE MySQL 变量中的适当值是多少?

ruby - 没有路由匹配 [GET] "/"设计

macos - 使用 Unix 终端打开当前文件夹中具有指定扩展名的所有文件的命令?

php - 制作自动完成文本框时的MYSQL错误

ruby-on-rails - 无法为我的 Rails 应用程序安装引擎设计。我有 5 条与之相关的错误消息

ruby - 如何在 Ruby 中搜索 $PATH 中的可执行文件

linux - 如何在 Unix/Linux 操作系统上移动给定数量的随机文件

linux - Unix 缓存二进制文件吗?