19.3. Функции Idle

Что, если у вас есть функция, которую вы хотите вызывать, если ничего не происходит? Тогда используйте функцию:

  source_id = gobject.idle_add(callback, ...)

Любые аргументы, после первого, будут переданы в callback по порядку. source_id возвращается для предоставления ссылки на обработчик.

Функция заставляет GTK вызвать указанный callback, если ничего не происходит.

Определение callback:

  def callback(...):

Где аргументы передаваемые в callback такие-же, как и указанные в функции gobject.idle_add(). Как и с другими callback функциями, возвращение FALSE остановит callback от последующих вызовов, и возвращение TRUE позволит функции выполниться ещё раз.

Функция Idle может быть удалена из очереди, вызовом функции:

  gobject.source_remove(source_id)

с source_id, возвращаемым из функции gobject.idle_add().