Python 应用-–-实时重载
汉化标题:Python 应用-–-实时重载
原文标题:Python-Apps-–-Live-reload
汉化更新时间:2026-01-14 15:19:59 +0800
英文原文最新更新时间:2021-10-21 22:13:47 +0300
自 CSP 0.1.76 起,现在提供了实时重载应用的选项,允许在不重启 Assetto Corsa 的情况下编辑应用并立即查看更改。你可以在 Python Apps Debug 的“Live reload”部分找到该选项:

只需点击 Reload 按钮,或勾选 “Reload automatically” 复选框,当任何 .py 文件更改时应用将自动重载。
要重载应用,CSP 会销毁它的所有应用实例,然后重新加载其主模块以及从应用文件夹导入的任何模块。这一点很重要:如果你的应用从其文件夹之外导入了模块,那么那些模块将不会被重载,因此除非它们是无状态的,否则可能会出现错误甚至崩溃。
请注意:在加载时,CSP 不会调用 acShutdown 函数,因为 AC 并没有实际关闭。如果你的应用有需要释放的资源(例如关闭 HTTP 服务器),请定义 ext_acReload 函数并在其中释放资源。另外,ext_acReload 仅在应用被重载时调用,所以你可能想这样使用:
py
httpd = HTTPServer(server_address, SimpleHTTPRequestHandler)
def ext_acReload():
httpd.shutdown()
def acShutdown():
ext_acReload()
# 以及所有其他与关闭相关的操作,例如记录最好圈速如果 ext_acReload 函数抛出异常,重载将不会继续,以确保程序不会重载到无效状态。如果你不小心遇到这种情况,可以从上下文菜单覆盖此行为:
