Является ли javax.xml.XPathFactory.newInstance () потокобезопасным?
Я спрашиваю, потому что считаю документацию по нему неоднозначной. Документы JDK 5 вообще не упоминают потокобезопасность; в JDK 6 они написали следующее:
Класс XPathFactory не является потокобезопасным. Другими словами, это ответственность приложения за то, чтобы не более одного потока используя объект XPathFactory в любой момент. Реализации рекомендуется отмечать методы как синхронизированные, чтобы защитить себя от сломанные клиенты.
Насколько я понимаю, иметь одноэлементную реализацию для XPathFactory
небезопасно, но делать что-то вроде этого должно быть безопасно:
XPath xPathEvaluator = XPathFactory.newInstance().newXPath();
Я что-то упускаю? Зависит ли это от фактического класса, который его расширяет? Нужно ли синхронизировать
метод, содержащий вышеуказанный оператор?