Я пытался использовать пользовательский SecurityManager для песочницы какого-либо загруженного извне кода. SecurityManager у меня работает нормально. Я выбрал тот же подход, что и в многочисленных постах, предложенных здесь: настраивать собственный менеджер всякий раз, когда выполняется потенциально опасный код, а затем возвращаться к стандартному менеджеру. Это прекрасно работает и делает то, что я хочу. Тем не менее, приложение является многопоточным: 2 потока используют пользовательский менеджер, один из которых использует стандартный. Это приводит к тому, что доверенному коду может помешать правильная работа, поскольку другой поток просто устанавливает настраиваемый менеджер безопасности. Есть ли способ обойти это? В качестве альтернативы, есть ли лучший способ вообще? Я видел сообщения, в которых говорилось об использовании разных политик с одним и тем же менеджером безопасности, но я не смог найти хороший пример этого. Любая помощь с благодарностью.