Go to content

Preventing Data Races in Async Coroutines by Kevin Bierhoff

Recording brought to you by American Express. https://americanexpress.io/kotlin-jobs It’s deceivingly easy to introduce race conditions into coroutines running asynchronously. In this talk we review some techniques that we’ve found effective at Google at detecting and preventing race conditions: static analysis and TSAN. First, a combination of interlocking static analyses allows flagging some potentially racy code at compile time based on heuristics. Second, we can leverage TSAN to detect race conditions when running (multithreaded) tests. Presented by Kevin Bierhoff. Kevin leads the Kotlin at Google team that helps Googlers use Kotlin in their daily work, including on Android and JVMs. Talk by: Kevin Bierhoff #Coroutines #KotlinConf

April 12, 2023