2013-07-30 1 views
0

Я пытаюсь опросить функцию в приложении Gtk. Код ...почему threading.Timer функция не вызывается с Gtk.main в python

from gi.repository import Gtk 
import sys,threading 

def destroy(k): 
print "destroyed" 
sys.exit() 

def poll(): 
print "called it " 
t=threading.Timer(1,poll) 
t.start() 

build=Gtk.Builder() 
build.add_from_file('test.glade') # it just creates a top level window 
window=build.get_object("boxy") 
build.connect_signals({"destroyit":destroy}) 
window.show_all() 
t=threading.Timer(1,poll) 
t.start() 
Gtk.main() 

функция опроса не выполняется .. Но если я удалю Gtk.main(), она отлично работает ... Так что происходит .. Почему это работает без основной а не с основным ... и как я могу выполнить функцию опроса в этом .. других альтернативах, чем threading.timer?

EDIT: Я нашел путь вокруг с помощью GObject.timeout_add (5000, опрос), но все-таки я хочу знать, почему функция threading.Timer оленья кожа выполнить ...

ответ

0

хорошо я нашел ответ на мой вопрос ...

GObject.timeout_add(5000,poll) 
Смежные вопросы