AngleSharp Html Parser 线程安全吗?
Posted
技术标签:
【中文标题】AngleSharp Html Parser 线程安全吗?【英文标题】:Is AngleSharp's HtmlParser threadsafe? 【发布时间】:2017-01-21 03:49:48 【问题描述】:我可以创建一个private static readonly htmlParser HtmlParser = new HtmlParser();
并跨多个线程安全地使用它吗?
或者我应该为每个线程或每个使用创建一个解析器以避免并发问题?
【问题讨论】:
您应该更明确地说明您打算使用哪种方法,并向我们提供代码示例。 【参考方案1】:从the source 看来它应该是线程安全的。该对象本身没有可变状态,并且每次使用默认选项创建一个新的 HtmlParser 似乎比创建一次没有任何好处,因此您应该能够将其视为单例。唯一的共享状态是它的配置,但默认构造函数使用默认配置,无论如何都是单例。
话虽如此,将其视为单身并没有太多好处。它避免了分配并稍微减少了 GC,但由于它没有昂贵的构造函数,因此差异不会很大。
【讨论】:
以上是关于AngleSharp Html Parser 线程安全吗?的主要内容,如果未能解决你的问题,请参考以下文章
用AngleSharp & LINQPad抓取分析博客园排行榜
Anglesharp - 如何从 Yelp 网站获得评分和评论?