Some of the things I've learned every day since Oct 10, 2016
115: Race Conditions
July 17, 2017Posted by on
In hardware or software systems, a race condition is a point in the system’s behavior which is critically dependent on timing issues.
In a software system, the issue could arise from two processes or threads which modify the same resources running at the same time, resulting in a resource modification error. In other words, two processes can modify the same resource and they try to modify it at the same time: they are “racing” to access it. A typical fix for this type of race condition is simply locking the resource so that only one process can access it at a time.