Когда я это делаю, я вижу некоторые странные случаи, когда выполнение CANoe останавливается после открытия экземпляра, в зависимости от машины, на которой я запускаю инструмент, что является спорадической проблемой. В качестве подсказки: я использую pySimpleGUI для пользовательского интерфейса и использую встроенную реализацию потоков, но я уже пытался написать код самостоятельно, и результат тот же.
Я в документации не видно, является ли эта библиотека потокобезопасной или нет, поэтому я предполагаю, что это не так, и именно поэтому у меня такие проблемы.
Кто-нибудь видел что-нибудь подобное? Кто-нибудь выполняет эту библиотеку в графическом интерфейсе или многопоточном приложении? Если да, то как?
Это пример моего кода:
Код: Выделить всё
Pd_conf.MainWindow.perform_long_operation(func=lambda: execute_smoketests(choice), end_key="--PRECONDITION_CHECK_DONE--")
event, values = Pd_conf.MainWindow.read(timeout=0)
event = None
print(f"TARGET : Execute the following smoke tests: {choice}")
print(f"Duration : 0:00:00") # noqa: F541
timeDelta = 0
compileStart = datetime.now()
while event != "--PRECONDITION_CHECK_DONE--":
event, values = Pd_conf.MainWindow.read(timeout=1000)
if (datetime.now() - compileStart).seconds > timeDelta:
# Get time delta since start of CANoe operation
timeDelta = (datetime.now() - compileStart).seconds
# Update print output if one second has passed
print(f"Duration : {timedelta(seconds=timeDelta)}", replace=f"Duration : {timedelta(seconds=timeDelta-1)}")
Я ожидал, что библиотека py_canoe будет работать из другого потока или хотя бы с помощью графического интерфейса приложения
п>
Подробнее здесь: https://stackoverflow.com/questions/791 ... nvironment
Мобильная версия