关于python:peeweemysqlevetlet-为每次操作都新开一个数据库连接

45次阅读

共计 603 个字符,预计需要花费 2 分钟才能阅读完成。

from core.mysql.models import TweetTable
from loguru import logger
import eventlet
import time
from eventlet import monkey_patch
monkey_patch()

def run():
    q = TweetTable.select()

    logger.debug(list(q))


if __name__ == '__main__':
    while True:
        g = eventlet.spawn(run)
        g.wait()
        time.sleep(1)

下面的代码是谬误的

不打 monkey_patch,或者 monkey_patch 打晚了

都会导致连贯复用

所以,咱们要在一开始就打上 monkey_patch

from eventlet import monkey_patch
monkey_patch()
from core.mysql.models import TweetTable
from loguru import logger
import eventlet
import time


def run():
    q = TweetTable.select()

    logger.debug(list(q))


if __name__ == '__main__':
    while True:
        g = eventlet.spawn(run)
        g.wait()
        time.sleep(1)

把 monkey_patch 一到最开始,就能够了

正文完
 0