同步和异步区别

来源:互联网 发布:破解版阅读软件 编辑:程序博客网 时间:2024/05/17 06:05

首先举个生活中的例子加深印象:

同步:你喊我吃饭,如果我听到了,我就和你去吃饭;如果我没有听到,你就不停的喊,直到我告诉你我听到了,我们才一起去吃饭

异步:你喊我吃饭,然后自己去吃饭,我得到消息后可能立即去吃饭,也可能等到下班后去吃饭


同步:多个线程访问同一个资源时,它们需要以某种顺序来确保资源在某一时刻只能被一个线程使用,同步能保证资源的安全,比如火车站卖票

    实现同步的方式:1、同步代码块    2、同步方法    

异步:每个线程都包含了运行时自身所需要的数据或方法,在进行输入输出处理时,不必关心其他线程的状态或行为