HTTP的一些概念

2022-04-25 10:46:11 字數 854 閱讀 5688

1. 什麼是**?

**是非同步程式設計時的基礎,將後續邏輯封裝成起始函式的引數,逐層巢狀

2. 什麼是同步/非同步?

非同步是指:傳送方發出資料後,不等接收方發回響應,接著傳送下個資料報的通訊方式。

3. 什麼是i/o?

磁碟的寫入(in)磁碟的讀取(out)

4. 什麼的單執行緒/多執行緒?

一次只能執行乙個程式叫做單執行緒

一次能執行多個程式叫多執行緒

5. 什麼是阻塞/非阻塞?

阻塞:前乙個程式未執行完就得一直等待

非阻塞:前乙個程式未執行完時可以掛起,繼續執行其他程式,等到使用時再執行

6. 什麼是事件?

乙個觸發動作(例如點選按鈕)

7. 什麼是事件驅動?

乙個觸發動作引起的操作(例如點選按鈕後彈出乙個對話方塊)

8. 什麼是基於事件驅動的**?

為了某個事件註冊了**函式,但是這個**函式不是馬上執行,只有當事件發生的時候,才會呼叫**函式,這種函式執行的方式叫做事件驅動~這種註冊**就是基於事件驅動的**,如果這些**和非同步i/o(資料寫入、讀取)操作有關,可以看作是基於**的非同步i/o,只不過這種**在nodejs中是有事件來驅動的

9. 什麼是事件迴圈?

//事件迴圈eventloop,倘若有大量的非同步操作,一些i/o的耗時操作,甚至是一些定時器控制的延時操作,它們完成的時候都要呼叫相應的**函式,從而來完成一些密集的任務,而又不會阻塞整個程式執行的流程,此時需要一種機制來管理,這種機制叫做事件迴圈.

總而言之就是:管理大量非同步操作的機制叫做事件迴圈

event loop:

**函式佇列。非同步執行的函式會被壓入這個佇列; 佇列被迴圈查詢。

http的一些請求

get 和 post get 從指定的資源請求資料。get 請求可被快取 get 請求保留在瀏覽器歷史記錄中 get 請求可被收藏為書籤 get 請求不應在處理敏感資料時使用 get 請求有長度限制 get 請求只應當用於取回資料 post 向指定的資源提交要被處理的資料 post 請求不會被快取 ...

X Window System的一些概念

linux unix系統下的顯示模式都是採用x的架構,這裡說明一下,其實我們常說的x其實不是現實裝置,而是現實協議,xserver和xclient通過x協議進行互動,由xserver對目標裝置進行顯示,然後xserver把中間的資訊和使用者反饋的資訊傳送給xclient。可以這樣形容 xserver...

鎖的一些概念

作業需要乙個目標之前分配目標,這樣在用目標是不用再等,可保證完成所需功能,這叫目標的分配。可用alcobj命令預先分配目標,用dlcobj解除分配 目標是根據要他們做什麼來分配的 讀或者修改 和他們是否可以共享。檔案和成員總是以 shrrd來分配。而資料用規定所狀態來分配鎖的級別。鎖狀態標誌使用的目...