這個小龍卷風測試存在以下問題:class SimpleIOLoopTests(tornado.testing.AsyncTestCase): def setUp(self): super(SimpleIOLoopTests, self).setUp() def test_executor_future(self): self.executor = ThreadPoolExecutor(2) @run_on_executor def wait_and_return_a_value(): time.sleep(2) return 20 @coroutine def async_compare(callback): val = yield wait_and_return_a_value() assert_that(val, equal_to(20)) callback() async_compare(self.stop) self.wait()關鍵是測試會一直循環(huán)直到發(fā)生超時。調(diào)試代碼時,看起來好像執(zhí)行者-未來是按done()創(chuàng)建的,因此,即使io_loop也不啟動它。我在這里做錯了什么?非常感謝您提供有關此問題的幫助順便說一句:如果我使用@return_future裝飾器(像這樣的裝飾器)創(chuàng)建一個瑣碎的未來,也會發(fā)生同樣的情況(對于它,已經(jīng)完成了,這是偶然的事實)@return_future def get_value(callback): callback(10)
添加回答
舉報
0/150
提交
取消