linux - 有没有办法让时间在 Linux 中过得更快

标签 linux time

除了配置 NTP 服务器等,我不太确定在 Linux 中计时是如何工作的。

我想知道是否有一种方法可以让我在 Linux 中加快时间。例如,我想在 1 秒内比正常速度快 10000 倍。

澄清一下,我不想像重置时钟那样让时间跳跃,我想提高滴答率,无论它是什么。

最佳答案

这通常是模拟和尽快重播传入数据或事件所需要的功能。

人们解决这个问题的方法是他们有一个事件循环,例如libeventboost::asio。当前时间从事件循环中获取(例如 epoll 返回的时间)并存储在事件循环变量当前时间中。不是使用 gettimeofdayclock_gettime,而是从 current time 变量中读取时间。所有计时器都由事件循环当前时间驱动。

当模拟/回放时,事件循环当前时间被分配了下一个事件的时间戳,因此消除了事件之间的持续时间并尽可能快地回放事件。而且您的计时器仍然可以在事件之间工作并像实时一样在事件之间触发,但没有延迟。当然,为了让您保存的事件流发挥作用,您的回放必须包含每个事件的时间戳。

关于linux - 有没有办法让时间在 Linux 中过得更快,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54933750/

相关文章:

linux - 如何在将标准输出重定向到 Bash 文件时添加时间戳?

php - 仅从数据库中获取时间戳日期

java - 本地时间求和 (Java)

c - 如何在C中的字符串中为time_t分配内存

java - 为什么 getStamp() 返回相同的值?

linux - 在 Cubietruck 上安装 node.js 和 mongoDB

linux - 如何在 Fedora 9 和 Ubuntu 11.10 之间进行双启动

c - 将指针传递给函数中的已初始化结构

linux - 在 Linux shell 上使用 groovy 执行长命令?

c++ - 使用属性 warn_unused_result [-Wunused-result] 声明的警告 : ignoring return value of 'int scanf(const char*, ...)' ,