Как использовать метод с именем bindThread в классе StandardContext?
Потому что я нашел метод с именем bindThread()
вызывается несколько раз в классе с именем StandardContext
в исходном коде Tomcat 7, особенно в методе с именем startInternal()
, Я не понимаю, почему нужно вызывать этот метод несколько раз.
На самом деле bindThread()
устанавливается загрузчик классов контекста потока, но я не знаю, почему до сих пор использовать bindThread()
а также unbindThread()
метод пара в startInternal()
вызывать несколько раз.
1 ответ
Запуск и остановка веб-приложения обычно происходит при действующем загрузчике класса контейнера. Некоторые части процесса запуска (и остановки) (например, запуск слушателей приложения) должны выполняться с помощью загрузчика классов веб-приложения. bindThread() и unbindThread() - это методы, которые переключаются на загрузчик классов веб-приложений и обратно соответственно. Различные элементы запуска и остановки должны происходить в определенном порядке, поэтому необходимо переключаться между загрузчиками классов.