更改系统时间会导致应用程序挂起LINUX(LUBUNTU)TCL / TK

时间:2014-07-29 22:56:36

标签: c linux ubuntu time tcl

我有一个带有c桌面应用程序的tcl / tk,其中一个要求是改变系统时间,后台有从c代码运行的线程,""""来自tcl代码的命令。每当我将时间更改为较早的时间系统挂起时 即:05:50:12 - > 05:45:12当我及时前进时,我也会感到奇怪。我正在运行lubuntu。我不确定在这种情况下该做什么,我做了一些测试,似乎在我及时改变之后等待。

更改我使用的时间:来自tcl代码的exec date --set="STRING"

1 个答案:

答案 0 :(得分:1)

Tcl取决于系统时间(从Unix时代开始转换为秒),对于许多事情的正确行为而言,相当接近单调增加,但最重要的是after命令中的任何内容。在内部,after计算事件应该发生的绝对时间,并且只有在达到该时间时触发事物,以便提前触发事件(可能由于各种OS事件而发生)并且#39;引起问题。如果你将系统时间设置得很长,那么Tcl会等到绝对时间到达,这看起来很像挂起。

只需将您的时钟与NTP同步(即打开ntpd),然后手动停止摆弄系统时钟。