种族和死锁之间的区别

时间:2010-11-29 15:37:49

标签: concurrency parallel-processing

在并发编程中,种族死锁之间的差异和共同点(如果有的话)是什么?一个详细的答案将不胜感激;)。

1 个答案:

答案 0 :(得分:9)

查看Description of race conditions and deadlocks

  

竞争条件

     

两个人都会出现竞争状况   线程访问共享变量   同一时间。第一个线程读取   变量和第二个线程   从中读取相同的值   变量。然后第一个线程和   第二个线程执行其操作   在价值上,他们竞相看   哪个线程最后可以写入值   到共享变量。的价值   最后写入其值的线程   保留,因为线程是   写作的价值   以前的帖子写道。

     

<强>死锁

     

两个线程发生死锁   每个锁定一个不同的变量   同时再尝试锁定   另一个线程已经变量   锁定。结果,每个线程停止   执行并等待另一个   线程释放变量。   因为每个线程都持有   另一个线程想要的变量,   什么都没发生,线程仍然存在   僵持。