2016-09-13 6 views
2

private static readonly HtmlParser HtmlParser = new HtmlParser();を1つ作成し、いくつかのスレッドで安全に使用できますか?AngleSharpのHtmlParserはスレッドセーフですか?

スレッドごとまたはパーフォーマンスごとのパーサーを作成して並行性の問題を回避する必要がありますか?

+0

どのような方法を使用するのかをより明示し、コードのサンプルを提供する必要があります。 –

答えて

0

the sourceスレッドセーフである必要があります。オブジェクト自体には変更可能な状態はなく、デフォルトのオプションを持つ新しいHtmlParserを作成すると、そのたびに一度作成すると利点がないように見えるので、それをシングルトンとして扱うことができます。唯一の共有状態はその設定ですが、デフォルトコンストラクタはデフォルト設定を使用します。これはとにかくシングルトンです。

言われているように、シングルトンとして扱うことには大きな恩恵はありません。それは割り振りを避け、少しGCを削減しますが、それは高価なコンストラクターを持たないため、違いは巨大ではありません。

関連する問題