3
因为如果线程安全的话,我只能为整个应用程序使用VTDGen
的一个实例。VTD-XML线程安全吗? (Java版本)
现在我正在为每个请求实例化一个新的VTDGen
,我正在考虑将它设置为static
,以便它只被初始化一次。
因为如果线程安全的话,我只能为整个应用程序使用VTDGen
的一个实例。VTD-XML线程安全吗? (Java版本)
现在我正在为每个请求实例化一个新的VTDGen
,我正在考虑将它设置为static
,以便它只被初始化一次。
你是什么意思,完全由线程安全?在VTDGen处理一个文档后,你可以从中获得vtdNav,VTDGen肯定可以重用来处理下一个文档。所以从这个意义上说,它是线程安全的,不仅在Java中,而且在C和C++中也是如此。
我正在处理大量小的xml文档。所以我想如果我让VTDGen成为一个类变量('static'),我可以进一步节省一些时间。但既然我不能保证在给定的时间只能处理一个文档,那么我想我别无选择,只能为我的servlet中的每个请求实例化VTGen。 – 2011-04-23 01:25:07
我没有看到任何问题,因为vtdGen并不是那么大的数据结构,因此实例化成本很小 – 2011-04-23 02:39:28
@ vtd-xml-author因为我们目前正在评估某些测试中的VTD,我们目前将其与SAX进行比较,我们注意到与SAX相比,VTD的解析初始设置需要相当长的时间(SAX平均为16 ms,VTD平均为226 ms(最小77 ms,最大441 ms))。在连续分析中,VTD平均比SAX快1/3(对于某些文档,但几乎总是比SAX慢)。您能否详细介绍一下初始设置成本高以及VTD在连续分析中做了哪些工作,从而导致分析时间更短?请注意,我们没有进行真正的热身阶段 – 2016-09-15 14:39:42