問題タブ [synclock]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
100 参照

vb.net - 単体テストで SyncLock が機能しない

Moduleいくつかのものをキャッシュするために使用したい があります。とてもシンプルです。ConcurrentDictionary保証された動作である必要があるため、私は避けたかったのです。

つまりね。関数を利用するコードをテストする単体テストがいくつかありHasColumnます。これらのテストを次のように設定しました。

次に、この機能をテストします。

ここでHasColumnメソッドをヒットした場所を見ることができます。つまりね。これらのテストを個別に実行すると、成功します。ただし、一連のテスト全体を実行すると失敗します。

ここには明らかにスレッドセーフの問題がありますが、私の人生では何が間違っていたのかわかりません。誰かが私がどこで間違ったのかを理解するのを手伝ってくれますか?

失敗したときのテストの出力は次のとおりです。

成功した場合のテストの出力は次のとおりです。