【问题标题】:What's the difference between dovetailing and concurrency?衔接和并发之间有什么区别?
【发布时间】:2016-06-22 03:54:06
【问题描述】:

我遇到了Dovetailing 的定义,这是我以前从未听说过的,我首先想到的是Concurrency。但是,我找不到任何与这两个概念相关的帖子。我还阅读了this

如果我没记错的话,吻合在某种程度上与图灵机有关,而且是理论上的,但从直觉上讲,它们都与分发源有关: 根据一些预定义的调度或规则集从这个进程和那个进程中执行一些操作。

我的问题是,有什么区别?或者它们根本就不是可比的概念吗?

【问题讨论】:

    标签: algorithm concurrency concurrent-programming turing-machines dovetailing


    【解决方案1】:

    吻合根本不是理论上的。任何允许多个进程或线程的操作系统都使用配合。否则单核 PC 将无法处理多个进程或线程。 Dovetailing 将是一种实现并发实体(如线程)的方法。但是并发处理也可以不同。例如。并行计算可以由 GPU 处理,并且大多数现代 CPU 具有多个内核,允许并发执行而无需配合。

    【讨论】:

      【解决方案2】:

      在线程上下文中,如果我们更喜欢 breadth-first(如 Wikipedia page 中所述),Dovetailing 似乎更接近于抢占式多线程

      抢占式多线程,强制每个线程离开 CPU(时间片),一段时间后,(纳秒)将控制权交给其他线程。广度而不是深度

      【讨论】:

        【解决方案3】:

        理论上吻合的主要目的是展示如何在有限的步数内到达无限的计算/任务列表中的任何一个的终点(如果存在这样的终点,即计算停止) .如果您按顺序进行计算,那么第一个非暂停进程之后的任何内容都将不再执行。

        如果进程列表不是无限的,那么您也可以执行所有进程的第一条指令,然后执行第二条,依此类推。 “对角线”的想法是不必要的。无限的进程列表可能与并发无关。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2011-01-21
          • 2010-11-06
          • 2016-04-24
          • 2015-05-08
          • 2018-12-23
          • 2010-11-07
          • 2014-07-20
          相关资源
          最近更新 更多