Subject: RE: Reusing XT instances From: Kay Michael <Michael.Kay@xxxxxxx> Date: Mon, 31 Jan 2000 17:12:10 -0000 |
> This much, I could take care of by locking the processor to > ensure sequential access. It's generally much better to create two instances than to create one instance and lock it. You should only synchronize on a single object where the state of the object actually needs to be shared between clients. > > SAX says that a parser is reusable but not reentrant. To me, > this means that a SAX parser is not thread-safe, so in any > multi-threaded environment, you'd have to lock the parser. With SAX it's not just multi-threading that's an issue, but multiple activations within a thread. Specifically, you're not allowed to call parse() from within a call-back. Again, it's crazy to lock the parser, much better to create a new instance for each parse. > > It's an interesting point that you brought up, however. It > could be worthwile to cache the Sheet. It'd make for a lot of rigamarole, but it might be > worth considering. > If you take a look at how Saxon does it in SaxonServlet, you'll see that it's not a lot of rigmarole at all, it's a dozen lines of code. Mike Kay XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: String Handling in XSLT, Hunter, David | Thread | RE: Reusing XT instances, Robert Streich |
Re: String Handling in XSLT, David Carlisle | Date | RE: String Handling in XSLT, Kay Michael |
Month |