[英]How to send a tcl command to a tcl/tk interpreter from a C application
[英]Changing system time causes application to hang LINUX (LUBUNTU) TCL/TK
我有一个带有c桌面应用程序的tcl / tk,其中一项要求是更改系统时间,在后台有一些从c代码运行的线程,以及从tcl代码运行的“ after”命令。 每当我将时间更改为较早的时间时,系统就会挂起,即: 05:50:12
: 05:50:12
: 05:50:12
> 05:45:12
当我按时间前进时,我也会得到奇怪的行为。 我正在运行lubuntu。 我不确定在这种情况下该怎么做,我做了一些测试,在我及时改变时间之后,之后一直在等待。
更改我使用的时间:tcl代码中的exec date --set="STRING"
Tcl取决于系统时间(从Unix纪元开始转换为秒),对于许多事物的正确行为(尤其是after
命令中的任何事物)的正确行为,其增加与单调相当接近。 在内部, after
计算的绝对时间的事件应该发生,仅一旦达到该时间触发一些东西,这样的事情都是早触发(可由于各种操作系统事件都发生),不会产生问题。 如果您将系统时间设置得很长,Tcl将一直等到绝对时间到达为止,这看起来很像死机。
只需将您的时钟与NTP同步(即,打开ntpd
),然后停止手动摆弄系统时钟即可。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.