JavaBu+中的DocumentBuilderFactory是否是线程安全的?

javax.xml.parsers.DocumentBuilderFactory的Java 1.4 doc毫不含糊地说明:

DocumentBuilderFactory类的实现不保证是线程安全的。 用户应用程序要确保从多个线程中使用DocumentBuilderFactory。 或者,应用程序可以为每个线程提供一个DocumentBuilderFactory实例。 应用程序可以使用工厂的同一实例来获取DocumentBuilder的一个或多个实例,前提是工厂实例一次不在多个线程中使用。

然而, Java 5和Java 6文档并没有说明这种情况。 DocumentBuilderFactory现在是线程安全的,还是Sun刚刚决定警告是否过度,人们应该知道更好?

DocumentBuilderFactory类的实现不保证是线程安全的。 用户应用程序要确保从多个线程中使用DocumentBuilderFactory。 或者,应用程序可以为每个线程提供一个DocumentBuilderFactory实例。 应用程序可以使用工厂的同一实例来获取DocumentBuilder的一个或多个实例,前提是工厂实例一次不在多个线程中使用。

DocumentBuilder上有一个reset()方法,它将它恢复到第一次创建时的状态。 如果您要使用ThreadLocal路线,请不要忘记给它打电话或者你已经被软管了。

因为在没有告诉我的钱的情况下使它保持线程安全是非常糟糕的味道,它仍然是不安全的。 您可以使用断点自行测试。