Можно ли остановить работающий скрипт DLR/IronPython/IronRuby?
-
11-09-2019 - |
Вопрос
У меня есть приложение, которое выполняет созданные пользователем сценарии IronRuby, где каждый поток выполняется в своем собственном потоке.Проблема, с которой я столкнулся, заключается в том, что могут произойти определенные события, требующие остановки сценария IronRuby в произвольной точке сценария.
Я могу сделать это, прервав поток, в котором выполняется сценарий, но такой подход привел к утечке памяти в приложении.После многих месяцев расследования я не смог исправить ситуацию, кроме как запланировав автоматический перезапуск процесса подачи заявки.Следовательно, я хочу отказаться от использования Thread.Abort.
Есть ли способ остановить выполнение сценария IronRuby вне сценария?
Единственная другая идея, которую я могу придумать, - это разделить сценарий каждого пользователя на отдельные строки и вставить новую строку после каждой строки сценария, которая проверяет, должен ли сценарий остановиться, но это обязательно приведет к синтаксическим ошибкам.
Решение
На данный момент ответ Нет :(.