同步/异步/多线程 的区别和解释

一般情况:顺序结构,必须等待前面的操作完成(两个人说话,a把所有话说完,b才能继续说)

并发:同一时间段处理多个任务的能力(两人说话,支持你一言我一语的交流,两人在一个时间段内都有说话,是基于时间段内的同时发生)

并发又有同步和互斥

  互斥:不能同时使用临界资源(有一个共享资源--话筒,两人必须用话筒说话,但同时只能有一个人用这个话筒,保证了只有一个人在说话)

   同步:前一个处理的结果作为下一个处理的资源。大多数情况下,同步已经实现了互斥。(两人你一言我一语的交流,我必须知道你说了啥我才能接上你的话)

并行:同一时刻处理多个任务的能力(两人合唱,同时出声)

异步:不用等待一个结果出来,可以继续其他操作(两个人不说话了,寄信,a把信拿到邮局就不用管了,回家可以想干嘛就干嘛,等b回信到了,取邮局接收一下结果--b的回信就可以了)

多线程:如果说同步和异步是对如何处理事情的要求,那么多线程就是实现这些要求的方法

猜你喜欢

转载自www.cnblogs.com/GaoAnLee/p/11758041.html