gpt4 book ai didi

python - 使用 nameko 运行服务时如何停止初始类

转载 作者:太空宇宙 更新时间:2023-11-04 06:39:59 25 4
gpt4 key购买 nike

您好,这是我的项目示例,我想使用 nameko run Test:A,而且我发现 class A 在运行此服务期间会反复初始化。实际上,我想连接到一个服务并重复做一些事情,我不想每次都初始化连接。那么有没有什么好的方法可以解决呢?

###FileName:Test.py###
from nameko.timer import timer
import time
class A:
name = 'test'
def __init__(self):
self.a = 'a'
print('this class has been init')

@timer(interval=0)
def test(self):
try:
print('this is a nameko method')
except:
pass
time.sleep(1)

@timer(interval=2)
def test2(self):
try:
print('second nameko method')
except:
pass
time.sleep(3)```

最佳答案

Nameko 服务以类的形式实现,但在面向对象编程方面,它们的行为与普通类不同。

特别是,该类是为每个工作人员实例化的,即每次触发入口点时。这就是为什么您一遍又一遍地看到“此类已初始化”的原因。

一般来说,您不应该在 Nameko 服务类中使用构造函数。

要管理服务的连接和一次性设置,您应该使用 DependencyProvider .

关于python - 使用 nameko 运行服务时如何停止初始类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58601264/

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