What is a Race Condition (Computer Programming)? Eye on Tech https://www.youtube.com/watch?v=KF8dF1QS8Go Transkript (automatisch erstellt) 0:00 Benjamin St. George: Is your code fit to multitask? 0:02 A Race condition is an undesirable situation in which two operations are happening at the same 0:11 time, and essentially compete for which one will be executed first. Race conditions are most 0:16 commonly associated with computer science and programming. It's a common issue for multithreaded 0:21 applications, but they show up in several forms, including in software storage, memory, and 0:27 networking. The best way to avoid race conditions is to have good, solid code that accounts for 0:32 these scenarios. To learn more about code quality and how to measure your codes value, click the 0:37 link above or in the description below. When race conditions occur, they depend on the sequence or 0:44 timing of a program's processes. Otherwise, the race condition could disrupt the execution or 0:49 cause bugs. Here's a basic scenario of a race condition: Someone with $2,000 in their bank 0:55 account wrote two checks, check A for $1,000 and check B for $1,500. When the checks are deposited, 1:02 a race condition develops, as the individual does not have enough money in their account to cover 1:06 both checks. Sequential processing would ensure there's enough funds to process check a first 1:11 before processing check B; But without sequential processing, both checks will be processed at the 1:16 same time, and the account will be overdrawn. Detecting and identifying race conditions and code 1:22 is difficult, but important. Hackers can take advantage of race condition vulnerabilities to 1:27 gain unauthorized access to networks. For example, if a program attempts to execute multiple 1:32 operations simultaneously, a threat actor can take advantage of the time between when the race 1:36 condition develops, and when a security control takes effect, in order to create a deadlock 1:41 situation -- A serious denial of service vulnerability or an entire software system comes 1:46 to a halt. Are your programs and code designed to mitigate and prevent race conditions? Let us know 1:52 in the comments below, and be sure to hit that like button.