https://www.cnblogs.com/SamWeb/p/11305180.html
同步和異步,相信學過編程的都知道,並且經常在使用,但是要表達出來的時候卻感覺只能意會不可言傳。
平常說的同步和異步一般局限在線程。
同步,並不是按字面意思的同時或一起,而是指協同步調,協助、相互配合。是按先后順序執行,如平常大家討論問題時說,讓我說完:意思是說我說完你再說。
比如說線程A和線程B一塊完成某個功能,線程A執行到某個步驟是需要線程B的執行結果,於是就停下來示意線程B執行,線程B得到結果時,喚醒線程A繼續執行。
綜上所述,同步就是:在發出一個功能調用時,在沒有得到返回結果之前一直在等待,不會繼續往下執行。 就像生產線,上一步沒有完成 會等待上一步的完成后再執行下一步
異步則剛好和同步相反,也就是在發出一個功能調用時,不管沒有沒得到結果,都繼續往下執行;
就像兩個人吵架一樣,一人說一人的,管對方有沒有說完。