2015-11-11 48 views
1

我需要使用Tornado實現一個簡單的服務。當我的服務啓動時,它創建了第二個線程,我需要在此線程中運行Tornado的ioloop,因爲與此同時,主線程正在忙於其他一些工作。在第二個線程中使用IOLoop.current()來獲取ioloop實例還是有另一種方法來獲得線程的ioloop實例? Docs說current()返回主線程的ioloop實例,如果當前線程沒有運行ioloop。在這一點上我有點困惑。Tornado Ioloop的線程

回答

1

我看到文檔混淆。在後臺線程

io_loop = IOLoop() 
io_loop.make_current() 

之後,IOLoop.current(instance=False)將返回線程的特殊IOLoop:當你的後臺線程開始,在後臺線程上運行此。

+0

在這個代碼示例中,注意'IOLoop'對象是在執行它的同一個線程中創建的。 –

+0

謝謝,它工作得很好! – bnopne