Skip to content

Latest commit

 

History

History

2-race-in-cache

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 

Race condition in caching szenario

Given is some code to cache key-value pairs from a mock database into the main memory (to reduce access time). The code is buggy and contains a race conditition. Change the code to make this thread safe.

Note: that golang's map are not entirely thread safe. Multiple readers are fine, but multiple writers are not.

Test your solution

Use the following command to test for race conditions and correct functionality:

go test -race

Correct solution: No output = solution correct:

$ go test -race
$

Incorrect solution:

==================
WARNING: DATA RACE
Write by goroutine 7:
...
==================
Found 3 data race(s)