Dalam python, Tornado ialah rangkaianrangka kerja berdasarkan gelung acara. Ia menggunakan coroutine untuk mengendalikan concurrency, dan gen.Return("hello") ialah kaedah untuk mengembalikan nilai dalam coroutine. Apabila menggunakan keupayaan tak segerak Tornado, gunakan gen.Return() untuk mengembalikan nilai dalam coroutine.
Dalam Tornado, gunakan hasil dan gen.Return() untuk mengembalikan nilai. Jika anda ingin mengembalikan nilai dalam coroutine, anda boleh menggunakan hasil dan gen.Return() untuk mencapai matlamat anda.
Contoh:
@gen.coroutine def my_coroutine(): result = yield some_async_call() raise gen.Return(result)
Gunakan asyncio.run() atau tornado.gen.convert_yielded() di luar fungsi untuk mendapatkan nilai pulangan.
rreeeeJika anda ingin mengembalikan nilai dalam coroutine, anda harus menggunakan hasil dan gen.Return() untuk mencapai matlamat anda.
Berikut ialah contoh mudah menggunakan coroutine dalam Tornado dan mengembalikan nilai:
result = await my_coroutine()
Some_async_call() di sini ialah fungsi tak segerak.
Jika anda ingin mendapatkan nilai pulangan di luar fungsi, anda boleh melakukan ini:
import tornado.ioloop import tornado.gen @tornado.gen.coroutine def my_coroutine(): result = yield some_async_call() raise tornado.gen.Return(result) def handle_result(result): print(result) if __name__ == "__main__": result = tornado.ioloop.IOLoop.current().run_sync(my_coroutine) handle_result(result)
Sudah tentu, sintaks async/wait juga boleh digunakan, yang memerlukan penambahan pengubah async sebelum fungsi dan menggunakan await apabila memanggil fungsi.
rreeeeDalam contoh di atas, hasilnya ialah nilai pulangan, yang boleh diproses dalam handle_result().
Atas ialah kandungan terperinci Penyelesaian untuk gen.Return(\'hello\') muncul dalam puting beliung. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!