我正在使用libxml解析器进行快速下载和显示。我的问题是在某些情况下,我需要停止解析器,而它正在处理。有可能吗?你们可以请你在这个建议我。在进程运行时是否可以停止libxml解析器?
在此先感谢, Sekhar Bethalam。
我正在使用libxml解析器进行快速下载和显示。我的问题是在某些情况下,我需要停止解析器,而它正在处理。有可能吗?你们可以请你在这个建议我。在进程运行时是否可以停止libxml解析器?
在此先感谢, Sekhar Bethalam。
如果您使用SAX推送接口(使用xmlCreatePushParserCtxt()
创建),您可以以某种方式向控制代码发出信号,表明您希望中止,并且可以停止呼叫xmlParseChunk()
。通过这种方式,您可以在当前“块”结束时停止解析。
如果您需要立即放弃,您可以通过在回调中抛出异常来实现。
SAX2/libxml2 API的xmlStopParser
-功能在这种情况下可能很有用。
在文档中指定为void xmlStopParser(xmlParserCtxtPtr context)
。
该文件可在此处获得: http://xmlsoft.org/html/libxml-parser.html#xmlStopParser