Ready, set, Go! Data-race detection and the Go language

28 Oct 2019  ·  Daniel Schnetzer Fava, Martin Steffen ·

Data races are often discussed in the context of lock acquisition and release, with race-detection algorithms routinely relying on vector clocks as a means of capturing the relative ordering of events from different threads. In this paper, we present a data-race detector for a language with channel communication as its sole synchronization primitive, and provide a semantics directly tied to the happens-before relation, thus forging the notion of vector clocks.

PDF Abstract

Categories


Software Engineering Programming Languages

Datasets


  Add Datasets introduced or used in this paper