[Zhihao Yuan] ability to run a function in a thread without calling a callback.

This commit is contained in:
Yann Leboulanger 2011-04-12 16:34:34 +02:00
parent 08020a310c
commit 6773c63cf6
1 changed files with 3 additions and 2 deletions

View File

@ -2899,13 +2899,14 @@ class PassphraseRequest:
class ThreadInterface: class ThreadInterface:
def __init__(self, func, func_args, callback, callback_args): def __init__(self, func, func_args=(), callback=None, callback_args=()):
""" """
Call a function in a thread Call a function in a thread
""" """
def thread_function(func, func_args, callback, callback_args): def thread_function(func, func_args, callback, callback_args):
output = func(*func_args) output = func(*func_args)
gobject.idle_add(callback, output, *callback_args) if callback:
gobject.idle_add(callback, output, *callback_args)
Thread(target=thread_function, args=(func, func_args, callback, Thread(target=thread_function, args=(func, func_args, callback,
callback_args)).start() callback_args)).start()