Is Xalan-C++ thread-safe?
Instances of XalanTransformer are not thread-safe; each thread should use its own instance. In order to support very efficient use in multi-threaded applications, Xalan-C++ is designed to avoid synchronization as much as possible. Each thread of execution is required to have its own set of “support” objects that contain the state of the transformation. Accordingly, no synchronization is required when multiple threads are executing. Parsed (“compiled”) stylesheets (see Compiling stylesheets) and parsed source documents may be freely shared by multiple threads of execution without worrying about providing synchronized access to them. The only exception to this rule: You use XercesParserLiaison to parse a document after calling XercesParserLiaison::setBuildBridgeNodes(false) or XercesParserLiaison::setThreadSafe(false). In this case, the document cannot be shared by multiple threads of execution. For reasons of performance, we do not recommend the use of XercesParserLiaison, so this shoul