アプリケーション用に単純なプラグイン システムを作成しましたが、今のところ、各プラグインを新しいスレッドで実行したいと考えています。
ここに私のコードの一部があります:
def newThread(self, f, args=()):
t = threading.Thread(target=f, args=args)
t.deamon = True
t.start()
return t
print "s"
for mod in imported_modules:
if 'init' in vars(mod):
newThread(mod.init, None)
print 1
私のプラグインの 1 つは、ソケットでリッスンしている TCP サーバーです。メインスレッドで実行すると、アプリケーションは他のプラグインをロードせず、サーバーが停止するまで待機します!
また、上記のコードは私のプラグインで init 関数を実行しません。
問題は次のとおり
です。新しいスレッドで外部関数を呼び出す方法は?
前もって感謝します!