DigiNews

Tech Watch by Johan Denoyer

← Back to articles

Data races and the limits of ThreadSanitizer in C and Go

Quality: 8/10 Relevance: 9/10

Summary

Data races frustrate deterministic testing; the article explains what a data race is and how detectors like ThreadSanitizer work, including historical algorithms and the limitations of TSAN. It also demonstrates a Python-based interpreter with vector clocks to illustrate how TSAN operates and why it can miss races, such as at a 255-thread boundary, with Go's concurrency model highlighted. The piece emphasizes understanding detector limits to improve concurrent code testing.

🚀 Service construit par Johan Denoyer