python - python类中的“run()”到底是什么
问题描述
示例中的 python 类通常具有“run()”函数。这对我来说开始表现得很奇怪。
示例 - 以下代码创建一个类作为新进程
import multiprocessing
class myClass(multiprocessing.Process):
def __init__(self):
multiprocessing.Process.__init__(self)
def run(self):
print("who invoked me!?")
if __name__ == '__main__':
p = myClass()
p.start()
所以我们调用start()
(not run()
) 并且输出将是
“谁召唤了我!?”
这就提出了第一个问题——它为什么有效?
如果这是地狱,那到底是什么鬼,但是,现在发生了以下行为:
从 CMD 运行,python 代码打印一切正常。
通过另一个进程运行python(通过nodejs中的python-shell),该run()
方法永远不会执行并保持挂起。
为什么?如何?谢谢。