Provided by: manpages-zh_1.6.3.3-2_all bug

NAME

       after - 延遲一段時間之後執行一個命令

總覽 SYNOPSIS

       after ms

       after ms ?script script script ...?

       after cancel id

       after cancel script script script ...

       after idle ?script script script ...?

       after info ?id?
_________________________________________________________________

描述 DESCRIPTION

        這個命令被用於延遲執行程序或者在將來某時在後臺執行一個命令。它有幾種形式,依靠給命令的第一個參數(來區分):

       after ms
              Ms             必須是整數,給出以毫秒爲單位的時間。命令在睡眠(sleep)             ms
              毫秒之後返回。當命令在睡眠的時候,應用不響應事件。

       after ms ?script script script ...?
              在這種形式中,命令立即返回,它安排一個            Tcl           命令在           ms
              毫秒之後作爲事件處理器(handler)來運行。在給定時間,命令將被精確的執行一次。延遲的命令是通過連接(concatenate)所有的
              script                            參數形成的,這與                           concat
              命令的方式(fashion)一樣。命令將在全局層次上執行(在任何                          Tcl
              過程的上下文之外)。在執行延遲命令時如果有錯誤發生,則使用                   bgerror
              機制來報告錯誤。after 命令返回一個標識符,after cancel 命令用它來取消延遲的命令。

       after cancel id
              取消前面安排的延遲命令的執行。Id       指示要取消那條命令;它必須是前面       after
              命令返回的。如果用 id 給出的命令已經執行了則 after cancel 命令不起作用。

       after cancel script script ...
              這個命令也取消一個延遲命令的執行。用空格分隔符來連接   script   參數(如同在  concat
              命令中那樣)。如果有一條等待的命令與這個字符串匹配,則取消它並永不執行;如果當前沒有這樣的等待命令則
              after cancel 命令不起作用。

       after idle script ?script script ...?
              用空格分隔符連接  script  參數(如同在 concat 命令中那樣),並被作爲一個空閒回調(idle
              callback)來安排結果腳本在以後執行。下次進入事件循環並且沒有事件要處理(的時候),這個腳本被精確的執行一次。命令返回一個標識符,after
              cancel   命令用它來取消延遲的命令。在執行延遲命令時如果有錯誤發生,則使用   bgerror
              機制來報告錯誤。

       after info ?id?
              這個命令返回關於存在的事件處理器的信息。如果沒提供  id  參數,命令爲所有通過  after
              命令給這個解釋器建立的事件處理器返回一個標識符的列表。如果提供了
              id,它指定一個現存的處理器;id                 必須是以前調用                 after
              返回的值並且仍未被觸發或取消。這種情況下命令返回一個有兩個元素的列表。列表的第一個元素是與
              id 關聯的腳本,第二個元素要麼是 idle 要麼是 timer,指示它是那種類型的事件處理器。

       命令的      after       msafter       idle       形式假定應用是事件驅動的:
       除非應用進入事件循環否則延遲命令將不被執行。在通常不事件驅動的應用中,如  tclsh,用  vwaitupdate 命令進入事件循環。

參見 SEE ALSO

       bgerror

關鍵字 KEYWORDS

       cancel, delay, idle callback, sleep, time

[中文版維護人]

       寒蟬退士

[中文版最新更新]

       2001/06/21

《中國 Linux 論壇 man 手冊頁翻譯計劃》:

       http://cmpp.linuxforum.net

       本頁面中文版由中文 man 手冊頁計劃提供。
       中文 man 手冊頁計劃:https://github.com/man-pages-zh/manpages-zh