如何在tcl脚本中插入睡眠30秒?

问题描述 投票:0回答:3

我想在我的 TCL 脚本中插入睡眠 30 秒。

我尝试使用睡眠命令。但它不起作用。你们中有人能帮忙解决这个问题吗?

tcl
3个回答
18
投票

你必须使用

after 30000

after
的参数被解释为毫秒。
在提问时,如果您插入代码,这将对其他人有用。


1
投票

正如Donal Fellows之前在评论中所说,rcubefather的解决方案将在睡眠时停止事件处理。

这是我使用的稍微不同的方法:

after 30000 set stop_wait &
vwait stop_wait
unset stop_wait

这会将“after 30000”命令置于后台(&)等待设置“stop_wait”变量,而任何其他事件处理都不会停止。使用 Tk GUI 时,这种行为更加明显。 但是,这不会阻止“vwait”命令在设置时捕获变量,从而允许这部分代码继续进行。 也不是 CPU 密集型的。


0
投票

如果您在Linux环境中,则可以使用任何Linux命令。

示例:

puts [date] ; exec sleep 10 ; puts [date]

将产生:

Mon Feb 24 10:09:08 IST 2020
Mon Feb 24 10:09:18 IST 2020

只需在 Linux shell 中输入

which sleep
来确保您有这样的命令。

© www.soinside.com 2019 - 2024. All rights reserved.