Provided by:
manpages-zh_1.5.1-1_all 
NAME
after - 延遲一段時間之後執行一茤R令
` SYNOPSIS
after ms
after ms ?script script script ...?
after cancel id
after cancel script script script ...
after idle ?script script script ...?
after info ?id?
_________________________________________________________________
yz DESCRIPTION
這茤R令被用於延遲執行程式或者在將來某時在I景執行一-
茤R令。它有幾種形式,依靠給命令的第一荌捊(來區分):
after ms
Ms 必須是整數,給出以毫秒為單位的時間。命令在睡眠(sleep) ms
毫秒之後返回。當命令在睡眠的時唌A應用不響應事件。
after ms ?script script script ...?
在這種形式中,命令立即返回,它安排一 Tcl 命令在 ms
毫秒之後作為事件處理器(handler)來運行。在給定時間,命令將被精確的執行一次。延遲的命令是通過連接(concatenate)所有的
script 參數形成的,這與 concat
命令的方式(fashion)一樣。命令將在全局層次上執行(在任何 Tcl
過程的上下文之外)。在執行延遲命令時如果有錯誤發生,則使用
bgerror 機制來報告錯誤。after 命令返回一蚍陏挐禳Aafter cancel
命令用它來取消延遲的命令。
after cancel id
取消前惘w排的延遲命令的執行。Id 指示n取消那條命令;它必須是前
after 命令返回的。如果用 id 給出的命令已經執行了則 after cancel
命令不起作用。
after cancel script script ...
這茤R令也取消一茤翕薳R令的執行。用空格分隔符來連接 script
參數(如同在 concat 命令中那樣)。如果有一條等待的命令與這-
茼r符串匹配,則取消它並永不執行;如果當前沒有這樣的等待命令則
after cancel 命令不起作用。
after idle script ?script script ...?
用空格分隔符連接 script 參數(如同在 concat
命令中那樣),並被作為一茠韃╪^調(idle
callback)來安排結果稿本在以後執行。下次進入事件循環並且沒有事件-
n處理(的時),這蚑Z本被精確的執行一次。命令返回一蚍陏挐禳Aafter
cancel
命令用它來取消延遲的命令。在執行延遲命令時如果有錯誤發生,則使用
bgerror 機制來報告錯誤。
after info ?id?
這茤R令返回關於存在的事件處理器的信息。如果沒提供 id
參數,命令為所有通過 after 命令給這-
虒挭擰鼠堨萿漕馧B理器返回一蚍陏挐讀漲C表。如果提供了
id,它指定一茞{存的處理器;id 必須是以前調用 after 返回的-
疇B仍未被觸發或取消。這種情況下命令返回一茼釣-
茪葛尷漲C表。列表的第一茪葛嶼O與 id 關聯的稿本,第二茪葛鴨麼是
idle n麼是 timer,指示它是那種類型的事件處理器。
命令的 after ms 和 after idle 形式假定應用是事件驅動的:
除非應用進入事件循環否則延遲命令將不被執行。在通常不事件驅動的應用中,如
tclsh,用 vwait 和 update 命令進入事件循環。
SEE ALSO
bgerror
r KEYWORDS
cancel, delay, idle callback, sleep, time
[]
Hhh
[]
2001/06/21
m Linux manUpn:
http://cmpp.linuxforum.net