mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-08-28 22:19:41 +03:00
py-порт в batch-режиме запускал сам себя через subprocess на каждый объект, и на разбор в единицы миллисекунд приходилось ~146 мс старта интерпретатора с импортом lxml. На корпусном прогоне это давало 92 мс на объект против 40 мс у PS — при том, что обычно py быстрее в разы. Причина асимметрии: PS вызывает себя через & в том же процессе, платя свой дорогой старт один раз на батч. Теперь py делает то же самое: файл компилируется один раз и выполняется в свежем globals() на каждый объект. Изоляция состояния получается той же, что у & в PowerShell (script-переменные не переживают вызов), а старт и компиляция платятся однократно. Прогон по acc_8.3.24 и erp_8.3.24 (33 895 объектов): 274 c против ~2900 c, вывод побайтово тот же и совпадает с PS-портом строка в строку. Батч с битым объектом в середине по-прежнему доходит до конца и возвращает ненулевой код, -OutFile пишет те же файлы на объект. Заодно уточнён комментарий про кэш состава конфигурации: «порождает процесс на объект» было верно только для py, тогда как в PS кэш не переживает объект из-за новой области видимости. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>