Concurrency must be managed because the simultaneous processing of multiple computing agents often leads to subtle and often unanticipated interactions between the computing agents and system resources causing such problems as interference, deadlock, and race conditions.