以关键字参数作为线程启动方法

时间:2014-07-02 22:32:15

标签: python multithreading

我想以线程开始这个方法:

server.run('0.0.0.0', threaded=True)

如果没有关键字参数,我就是这样做的:

start_new_thread(server.run, ('0.0.0.0', None, False))

这是我难看的解决方案:

def startServer():
     server.run('0.0.0.0', threaded=True)

start_new_thread(startServer, ())

这可以在一行中完成吗?

1 个答案:

答案 0 :(得分:4)

如果start_new_thread没有**kwargs参数,那么您可以使用:

from functools import partial
start_new_thread(partial(server.run, "0.0.0.0", threaded=True))

或者简单地说:

start_new_thread(server.run, ("0.0.0.0",), {"threaded": True})

希望它有所帮助!