我一直在寻找一种直接改变正在运行的模块中变量的方法。 我想要实现的是负载测试正在运行,并且我可以手动调整调用速度或其他任何方式。你知道吗
下面是我刚刚创建的一些代码(没有测试e.d.),只是给你一个想法。你知道吗
class A():
def __init__(self):
self.value = 1
def runForever(self):
while(1):
print self.value
def setValue(self, value):
self.value = value
if __name__ == '__main__':
#Some code to create the A object and directly apply the value from an human's input
a = A()
#Some parallelism or something has to be applied.
a.runForever()
a.setValue(raw_input("New value: "))
编辑#1:是的,我知道现在我再也不会碰到a.setValue():-)
您编写的伪代码与python中线程/多处理的工作方式非常相似。例如,您希望启动一个“永远运行”的线程,而不是直接修改内部速率值,您可能只需要通过一个给出新值的队列发送一条消息。你知道吗
查看this question。你知道吗
下面是一个演示如何做你所要求的事情。我更喜欢使用队列来直接调用线程/进程。你知道吗
下面是一个多线程示例。此代码将与python解释器一起工作,但与IDLE的python Shell不一起工作,因为
raw_input
函数的处理方式不同。你知道吗相关问题 更多 >
编程相关推荐