Spec-Zone .ru
спецификации, руководства, описания, API
Spec-Zone .ru
спецификации, руководства, описания, API
Библиотека разработчика Mac Разработчик
Поиск

 

Эта страница руководства является частью версии 5.0 Инструментов XCode

Получить эти инструменты:

Если Вы выполняете версию Инструментов XCode кроме 5,0, просматриваете документацию локально:

Читать страницы руководства

Страницы руководства предназначаются как справочник для людей, уже понимающих технологию.

  • Чтобы изучить, как руководство организовано или узнать о синтаксисе команды, прочитайте страницу руководства для страниц справочника (5).

  • Для получения дополнительной информации об этой технологии, ищите другую документацию в Библиотеке Разработчика Apple.

  • Для получения общей информации о записи сценариев оболочки, считайте Shell, Пишущий сценарий Учебника для начинающих.



Tcl_DoWhenIdle(3)                          Tcl Library Procedures                          Tcl_DoWhenIdle(3)



____________________________________________________________________________________________________________

NAME
       Tcl_DoWhenIdle, Tcl_CancelIdleCall - invoke a procedure when there are no pending events

SYNOPSIS
       #include <tcl.h>

       Tcl_DoWhenIdle(proc, clientData)

       Tcl_CancelIdleCall(proc, clientData)

ARGUMENTS
       Tcl_IdleProc *proc (in)               Procedure to invoke.

       ClientData clientData (in)            Arbitrary one-word value to pass to proc.
____________________________________________________________________________________________________________


DESCRIPTION
       Tcl_DoWhenIdle arranges for proc to be invoked when the application becomes idle.  The application is
       considered to be idle when Tcl_DoOneEvent has been called, could not find any events to  handle,  and
       is about to go to sleep waiting for an event to occur.  At this point all pending Tcl_DoWhenIdle han-dlers handlers
       dlers are invoked.  For each call to Tcl_DoWhenIdle there will be a single call to proc;  after  proc
       is  invoked the handler is automatically removed.  Tcl_DoWhenIdle is only usable in programs that use
       Tcl_DoOneEvent to dispatch events.

       Proc should have arguments and result that match the type Tcl_IdleProc:
              typedef void Tcl_IdleProc(ClientData clientData);
       The clientData parameter to proc is a copy of the clientData argument given to Tcl_DoWhenIdle.  Typi-cally, Typically,
       cally,  clientData  points to a data structure containing application-specific information about what
       proc should do.

       Tcl_CancelIdleCall may be used to cancel one or more previous calls to Tcl_DoWhenIdle:  if there is a
       Tcl_DoWhenIdle  handler  registered  for proc and clientData, then it is removed without invoking it.
       If there is more than one handler on the idle list that refers to proc and  clientData,  all  of  the
       handlers are removed.  If no existing handlers match proc and clientData then nothing happens.

       Tcl_DoWhenIdle is most useful in situations where (a) a piece of work will have to be done but (b) it
       is possible that something will happen in the near future that will change what has  to  be  done  or
       require  something  different to be done.  Tcl_DoWhenIdle allows the actual work to be deferred until
       all pending events have been processed.  At this point the exact work to be done will  presumably  be
       known and it can be done exactly once.

       For  example,  Tcl_DoWhenIdle  might  be used by an editor to defer display updates until all pending
       commands have been processed.  Without this feature, redundant redisplays might occur in some  situa-tions, situations,
       tions, such as the processing of a command file.

BUGS
       At present it is not safe for an idle callback to reschedule itself continuously.  This will interact
       badly with certain features of Tk that attempt to wait for all idle callbacks to  complete.   If  you
       would  like  for an idle callback to reschedule itself continuously, it is better to use a timer han-dler handler
       dler with a zero timeout period.


KEYWORDS
       callback, defer, idle callback



Tcl                                                  7.5                                   Tcl_DoWhenIdle(3)

Сообщение о проблемах

Способ сообщить о проблеме с этой страницей руководства зависит от типа проблемы:

Ошибки содержания
Ошибки отчета в содержании этой документации к проекту Tcl.
Отчеты об ошибках
Сообщите об ошибках в функциональности описанного инструмента или API к Apple через Генератор отчетов Ошибки и к проекту Tcl через их страницу создания отчетов ошибки.
Форматирование проблем
Отчет, форматирующий ошибки в интерактивной версии этих страниц со ссылками на отзыв ниже.