Я размещаю IronPython в WebService на основе c #, чтобы иметь возможность предоставлять собственные сценарии расширения. Однако я обнаружил, что использование памяти резко возрастает, когда я выполняю простое нагрузочное тестирование, многократно выполняя веб-сервис в цикле.
IronPython-1.1 реализовал IDisposable на своих объектах, так что вы можете избавиться от них, когда они будут сделаны. Новый движок IronPython-2, основанный на DLR, не имеет такой концепции.
Из того, что я понял, каждый раз, когда вы выполняете скрипт в ScriptEngine, новая сборка внедряется в домен приложения и не может быть выгружена.
Есть ли способ обойти это?