并发简史

  • 资源利用率: 在一些情况下,程序必须等待某个外部操作执行完成,例如输入操作或者输出操作等,而在等待时程序无法执行其他任何操作。因此,如果在等待的同时可以运行另一个程序,那么无疑将提高资源的利用率。
  • 公平性: 不同的用户和程序对于计算机上的资源有着同等的使用权。一种高效的运行方式是通过粗粒度的时间分片(Tmie Slicing)使这些用户和程序能共享计算机资源,而不是由一个程序从头运行到尾,然后再启动下一个程序。
  • 便利性: 通常来说,在计算多个任务时,应该编写多个程序,每个程序执行一个任务并在必要的时候互相通信,这比只编写一个程序来计算所有任务更容易实现。

不论什么时候,只要您将修改的变量接下来可能被另一个线程读取,或者您将读取的变量最后是被另一个线程写入的,那么您必须考虑并发问题,并采取合适的同步方式。

文章目录
|