Ist DocumentBuilderFactory thread-safe in Java 5+?
Den Java 1.4 doc für javax.xml.parsers.DocumentBuilderFactory
Staaten unmissverständlich:
Einer Umsetzung der DocumentBuilderFactory Klasse NICHT garantiert werden, um thread-safe. Es ist bis zum Benutzer-Anwendung, um sicherzustellen, dass über die Verwendung der DocumentBuilderFactory aus mehr als einem thread. Alternativ kann die Anwendung eine Instanz der DocumentBuilderFactory pro thread. Eine Anwendung kann mithilfe der gleichen Instanz von der Fabrik zu erhalten eine oder mehrere Instanzen der DocumentBuilder, sofern die Instanz der factory nicht in mehr als einem thread zu einem Zeitpunkt.
Den Java 5 und Java 6 docs, jedoch sagen Sie nichts über die Art. Ist DocumentBuilderFactory
thread-sicher jetzt, oder hat die Sonne nur entscheiden, die Warnung war übertrieben, und die Menschen sollten es besser wissen?
Nicht ein Duplikat ist, die Frage ist, ob es sicher für mehrere threads zu konstruieren DocumentBuilders Verwendung der gleichen Fabrik, und nicht, ob es sicher ist, zu versuchen, zu analysieren mehrere Dokumente mit dem gleichen generator.
InformationsquelleAutor David Moles | 2012-03-22
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gemäß der Dokumentation des singleton - DocumentBuilderFactory die newInstance Methode ist nicht sychronized und dann die DocumentBuilderFactory ist immer noch nicht thread-safe in Java 8... Weder in Java 11. Eigentlich ist der Konstruktor nicht verändert hat, seit Java 1.4.
InformationsquelleAutor bdzzaid
Seit es gewesen wäre, in extrem schlechten Geschmack, um es thread-sicher, ohne zu sagen, mein Geld ist, dass es immer noch unsicher. Sie können dies testen, sich mit Haltepunkte.
InformationsquelleAutor Pavel Rozenblioum