그래서 나는 비동기 코드를 작성하는 방법으로 조사되었고, 나는 아래의 코드와 함께 올라와있다 :설명하면서 파이썬 토네이도 비동기
나는 다음과 같은 두 가지 질문이 있습니다
- 우리가 어떻게 가정 할 수 있습니다 이 코드는 비동기입니까? 우리는 gen 모듈을 사용하면 비동기로 만듭니다 (당연히 gen coroutine을위한 비동기 모듈을 작성해야 함).
- 왜 토네이도가 하나의 메인 스레드를 포함합니까? 다른 스레드 풀에 링크되는 스레드 풀에 연결되는 메인 스레드를 가질 수 있습니까? 이 질문은 하나의 메인 스레드로 무엇을 성취 할 것인가?
from tornado import gen
import tornado.web
import tornado.ioloop
import motor
class MainHandler(tornado.web.RequestHandler):
@tornado.web.asynchronous
@gen.coroutine
def get(self):
post = yield db.user.find_one()
print post
self.write(post['name'])
handlers=[(
(r'/', MainHandler)
)]
db = motor.MotorClient().example
if __name__ == '__main__':
application = tornado.web.Application(handlers,debug=True)
application.listen(8888)
tornado.ioloop.IOLoop.instance().start()