AngleSharp的HtmlParser线程是否安全?

时间:2016-09-13 13:50:56

标签: c# .net html-parsing anglesharp

我可以创建一个private static readonly HtmlParser HtmlParser = new HtmlParser();并在几个线程中安全地使用它吗?

或者我应该为每个线程或每次使用创建解析器以避免并发问题?

1 个答案:

答案 0 :(得分:0)

the source来看,它应该是线程安全的。对象本身没有可变状态,并且每次创建一个带有默认选项的新HtmlParser似乎没有比创建它一样有任何好处,因此您应该能够将其视为单例。唯一的共享状态是它的配置,但默认构造函数使用默认配置,无论如何都是单例。

话虽如此,将其视为单身人士并没有太大的好处。它避免了分配并减少了GC,但因为它没有昂贵的构造函数,所以差别不会很大。