mirror of
https://gitee.com/sui-feng-cb/AzurLaneAutoScript1
synced 2026-03-09 13:59:02 +08:00
Fix: stop FGO-py before join logger thread
This commit is contained in:
parent
a88156fced
commit
2621c802d9
@ -104,6 +104,7 @@ def export_method(func):
|
||||
script = FgoAutoScript(config_name)
|
||||
script.config.bind(inflection.camelize(func.__name__))
|
||||
getattr(script, func.__name__)()
|
||||
script.app.pipe.stdin.close()
|
||||
script.app.logger.join(10)
|
||||
return wrapper
|
||||
|
||||
|
||||
@ -37,7 +37,6 @@ class FGOpy(HeadlessCliApplication):
|
||||
def callback(self, line):
|
||||
if line == "exited":
|
||||
self.last_error = "exited"
|
||||
self.orphan_slayer.kill()
|
||||
if self.mutex.locked():
|
||||
self.mutex.release()
|
||||
return
|
||||
|
||||
@ -19,12 +19,10 @@ class HeadlessCliApplication:
|
||||
if not line:
|
||||
break
|
||||
self.callback(line[:-1])
|
||||
try:
|
||||
self.pipe.wait(10)
|
||||
except TimeoutExpired:
|
||||
self.pipe.kill()
|
||||
finally:
|
||||
self.callback("exited")
|
||||
if hasattr(self, "orphan_slayer"):
|
||||
self.orphan_slayer.kill()
|
||||
self.pipe.kill()
|
||||
self.callback("exited")
|
||||
|
||||
self.logger = Thread(target=f, daemon=True)
|
||||
self.logger.start()
|
||||
|
||||
Loading…
Reference in New Issue
Block a user