我想在robotframework中有一個監視線程來連續監視信號,並在讀取某個信號時強制拆卸。我有以下代碼。RobotFramework監視線程觸發拆解
import signal
from datetime import datetime
from robot.api import logger
from robot.libraries.BuiltIn import BuiltIn
import logging
import thread
import os
import sys
import time
def do_error_log_monitoring_new():
def _monitor_log():
time.sleep(5)
# Monitor_Some_Signal
builtin_lib.fatal_error(msg='Force Teardown')
thread_logger = logging.getLogger('root')
thread_logger.info("Started Fault Listener")
builtin_lib = BuiltIn().get_library_instance('BuiltIn', all=True)
thread.start_new_thread(_monitor_log,())
我builtin_lib = BuiltIn().get_library_instance('BuiltIn', all=True)
與all=True
參數返回所有的庫名實例的字典映射。但是我看到了以下錯誤:
AttributeError的:「快譯通」對象有沒有屬性「是fatal_error」
此外,除去all=True
參數允許的功能要經過和是fatal_error觸發,但是我注意到它不會在主線程中觸發拆卸,這是我打算做的。有關如何在輔助線程中從fatal_error()
函數的主線程中引發拆卸的任何建議?
我早些時候嘗試過,但我仍然無法在主線程中強制拆卸。第二個線程中的fatal_error似乎不會在主線程中強制拆卸。 – Drake