为什么异步进程不称为同步?

问题描述 投票:22回答:9

所以我对这个术语感到有点困惑。

每个人都将“异步”计算称为在不同的线程上运行不同的进程,从而产生这些进程同时运行的错觉。

这不是异步这个词的定义。

a⋅syn⋅chro⋅nous
–adjective 
1. not occurring at the same time. 
2. (of a computer or other electrical machine) having each operation started only after the preceding operation is completed. 

我在这里不理解什么?

asynchronous terminology parallel-processing
9个回答
10
投票

这意味着两个线程没有同步运行,也就是说,它们不是在同一时间轴上运行。

我认为这是计算机科学家对他们使用单词过于聪明的一个例子。

在此上下文中,同步将表明两个线程同时开始和结束。从这个意义上说,异步意味着两个线程都可以根据需要自由启动,执行和结束。


9
投票

“同步”一词意味着函数调用将与其他事件同步。

异步意味着不会发生这种同步。

看起来你所拥有的定义应该是“并发”或其他东西的定义。这个定义看起来不对。


PS:

这是一个维基词典的定义:

asynchronous

  1. 不同步;发生在不同的时间。
  2. (计算请求或消息)允许客户端在处理期间继续。

恰好与您发布的内容完全相反。


5
投票

我相信这个术语最初用于同步与异步通信。同步意味着两个通信部分具有它们运行的​​公共时钟信号,因此它们并行运行。异步通信具有就绪信号,因此一部分要求数据并在可用时获得信号。

这些术语随后适用于流程,但由于存在明显差异,这些术语的某些方面的工作方式不同。对于单个线程进程,请求执行某些操作的自然方式是进行将控制转移到子进程的同步调用,然后在完成后返回控制,然后继续进行。

异步调用的工作方式与异步通信的工作方式类似,即发送请求以完成某项操作,执行此操作的进程会在完成后返回信号。这些术语的使用不同之处在于,对于进程而言,进程是异步处理中的进程并行运行,而对于通信而言,它是并行运行的同步通信。

因此,“计算机或电机”对于正确定义术语来说实际上是一个过于宽泛的范围,因为它以不同的方式用于不同的技术。


2
投票

我猜它是因为它们没有同步;)

换句话说......如果一个进程被停止,被杀或正在等待某个东西,另一个进程将继续


2
投票

我认为这里的答案与大多数答案略有不同。

异步意味着“不会同时发生”。

在线程的特定情况下:

  • 同步意味着“立即执行此代码”。
  • 异步意味着“将此工作排入将在未来的某个不确定时间执行的不同线程”

这通常允许您“一次做两件事”,原因如下:

  • 一个线程正在等待(例如,数据到达串行端口)所以是睡着了
  • 您有多个处理器,因此两个线程可以并发运行。

然而,即使有128个处理器内核,情况也是如此:工作将“在未来的某个时间”(如果可能在不久的将来)执行,而不是“现在”执行。


1
投票

你的第二个定义在这里更有帮助:

2. [...] having each operation started only after the preceding operation is completed.

进行异步调用时,可能无法在下一个操作开始之前完成该调用。当呼叫是同步时,它将是。


0
投票

它实际上意味着异步事件独立于其他事件发生,而同步事件将发生依赖于其他事件。


0
投票

它就像:易燃,易燃(这意味着同样的事情)

说真的 - 这只是英语语言中的一个怪癖。它没有多大意义。你可以尝试解释它,但是反过来的含义也很容易。


0
投票

这里的许多答案都不正确。独立地有一个起始粒子,表示不依赖,就像A同步,但依赖和同步的含义是不一样的! :d

所以三个受抚养人会等待订单,因为他们依赖于订单,但他们等待,所以他们不同步。

在英语和任何其他与a,syn和chrono共同根源的语言(意大利语:asincrono;西班牙语:asincrónico;法语:asynchrone;希腊语:a = not syn = together chronos = time),这意味着完全相反。

这个术语非常反制。异步功能是同步的,它们同时发生,这就是它们的功能。他们不要等待,他们不要依赖,他们不要让用户等待,但所有那些不是指除了同步之外的任何东西:)

唯一可能正确的答案是CLOCK one,尽管它仍然令人困惑。我的个人解释是这个故事:

“一位教授有一个办公室,他为同学们进行同步通话。他在大学的主要大厅大声说:'嘿,想跟我说话的人应该明天早上10点来。'或者简单地说一个标志说同样的东西。

结果:早上10点,你看到一个很长的队列。人们有同一时间,所以他们在同一时刻进来,他们“在这个过程中堆积”。因此,教授认为学生不要在队列中浪费时间(并进行同步操作,即在他们的生活中同时进行并行操作,这就是混乱的地方)。

他决定学生可以替代他进行异步呼叫,也就是说,每当学生与他交谈时,学生可以,例如,在学生可以做任何他们喜欢的事情的房间里打电话给另一个学生说教授可以自由说话。同时。因此,每个学生都没有单一的同步通话(早上10点,所有人都是同一时间),但根据教授办公室每次讨论所需的时间,他们有10,10.10,10.18,10.27等。“

拥有相同时钟的意思是@Guffa吗?

© www.soinside.com 2019 - 2024. All rights reserved.