gpt4 book ai didi

python - 在 webpy 上只初始化一次 python 类

转载 作者:行者123 更新时间:2023-12-01 03:11:32 24 4
gpt4 key购买 nike

我正在使用 web.py 托管一个简单的 Web 服务。 Web 服务在后端(ClassA 内部)运行分析应用程序。在 web.py 的初始化期间,我想将所有数据预先加载到内存中(即仅在 Web 服务器启动时调用 a = ClassA() 一次),并且当用户发送 Web 请求时,Web 服务器将仅响应预先计算的结果(即返回 a.do_something)。

下面的代码似乎每次收到 HTTP POST 请求时都会运行“add”类的 init() 。这是浪费时间,因为初始化阶段需要相当长的时间。是否可以只初始化ClassA一次?

import web
from aclass import ClassA

urls = (
'/add', 'add'
)

class add:
def __init__(self):
a = ClassA()

def POST(self):
return a.do_something()

if __name__ == "__main__":
app = web.application(urls, globals())
app.run()

最佳答案

尝试:

class add:
a = ClassA()

def POST(self):
return add.a.do_something()

这将使其成为类绑定(bind)参数而不是实例绑定(bind)参数,即仅初始化一次。

关于python - 在 webpy 上只初始化一次 python 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42858570/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com