問題タブ [sanity-check]
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.
multithreading - マルチスレッドをデバッグするための fsanitize からの紛らわしい出力
私は C で pthreads を使用していgcc ... -fsanitize=thread -g
ます。この投稿が氾濫するのを避けるために、実行可能ファイルを実行したときに生成される出力のごく一部のみを含めます。
行 178 は、次のコード セグメントを参照しています。
このコード行は複数のスレッドからアクセスできるため、同期の問題を回避するためにロックを実装しました。また、この特定の共有メモリへの書き込みがファイル全体で発生するのはこれだけです。
print_buf
結論として、構造体をロックで「正しく」保護していますが、サニタイザーは文句を言います。これは実際にどのようにデータ競合になるのでしょうか? 私は何が欠けていますか?