頁面同步呼叫和非同步呼叫的區別

2022-11-17 08:25:53 字數 613 閱讀 3566

1樓:匿名使用者

假設你頁面要做三件事,a,b,c,同步呼叫的方式一般就是做完a後做b,做完b後再做c,而非同步呼叫則是,開始做a時,不等a做完,你就可以開始做b,不等b做完,就開始做c。假如三件事都要耗時5s中,這時同步的話最少需要做15s才能完成,而非同步的話,最少可能5s就完成了,所以非同步效率是比較高的。但這隻適用於三件事互相沒有關聯的情況。

如果有關聯,相互依賴的情況,比如,b必須在a做完才能做,c必須在b做完才能做,同步的話跟以前一樣程式設計,順序執行就行了,非同步的話,就只能在**函式裡面執行了,寫起來麻煩點,效率是一樣的。

2樓:好程式設計師

常見的方法呼叫都是同步呼叫,這種呼叫方式是一種阻塞式的呼叫方式,即客戶端(主呼叫方)**一直阻塞等待直到被服務端(被呼叫方)返回

為止。這種呼叫方式相對比較直觀,也是大部分程式語言直接支援的一種呼叫方式。但是,如果我們面對是基於粗粒度的服務元件,面對的是一些需要比較長時間才

能有響應的應用場景,那麼我們就需要一種非阻塞式呼叫方式,即非同步呼叫方式。

sca程式設計模式提供了三種方式的非同步呼叫,它們分別是:

1. 單向呼叫方式。

2. 延遲響應方式。

3. 請求**方式。

庫函式呼叫和系統呼叫的區別是什麼

庫函式是語言本身的一部分,而系統函式是核心提供給應用程式的介面,屬於系統的一部分。函式庫呼叫是語言或應用程式的一部分,而系統呼叫是作業系統的一部分。使用者應用程式訪問並使用核心所提供的各種服務的途徑即是系統呼叫。在核心和使用者應用程式相交界的地方,核心提供了一組系統呼叫介面,通過這組介面,應用程式可...

網路程式設計裡的同步和非同步有啥區別的

網路程式設計中,同步的意思是說,進行收發資料,等到資料真正傳送出去或者接受到,才返回 而非同步的意思是,可以把資料傳送到緩衝區立即返回,而傳送成功的訊息是通過事件通知的。非同步可以騰出更多的cpu來處理其他事情,所以非同步的方式比較靈活。執行緒同步是指,多個執行緒協同完成一件工作,一個執行緒需要等待...

系統呼叫和程式庫的區別和聯絡,什麼是系統呼叫?它與庫函式有什麼區別和聯絡?

一般沒什麼區別,多數庫函式實際上一般最終都是通過系統呼叫實現的,另外那些庫函式完成字串比較等功能,你自己也可以編寫。使用系統呼叫的好處在於,不增加可執行程式的大小,即使你把系統的功能呼叫完,你的程式也不大。使用系統呼叫的另外一個好處,以後換其它語言寫程式也能很快得心應手。系統呼叫與庫函式和使用程式有...