Zircon套接字定義

2021-09-24 19:32:37 字數 1840 閱讀 4183

socket - 雙向流式ipc傳輸

套接字是雙向流傳輸。區別於通道,套接字只移動資料(不移動控制代碼)。

資料通過zx_socket_write()]寫入套接字的一端,並且通過[zx_socket_read()]從相反的另一端讀取。

建立後,套接字的兩端都是可寫和可讀的。通過傳入zx_socket_shutdown_readzx_socket_shutdown_write選項引數到函式[zx_socket_shutdown()],可以關閉套接字一端的讀取和/或寫入功能。

可以從套接字物件查詢以下屬性:

zx_prop_socket_rx_threshold套接字讀取閾值的大小,以位元組為單位表示。當套接字上排隊的位元組數(可供讀取)等於或大於此值,則傳送zx_socket_read_threshold訊號。預設情況下禁用讀取閾值訊號(設定後,將此屬性的值寫為0將禁用它)。

zx_prop_socket_tx_threshold套接字寫入閾值的大小,以位元組為單位。當套接字上可供寫入的空間等於或是大於此值時,傳送*zx_socket_write_threshold**訊號。寫入閾值信令在預設情況下是禁用的(當設定時,將此屬性的值寫為0將禁用它)。

從套接字控制代碼的角度來看,接收緩衝區包含的資料是使用[zx_socket_read()]函式從該控制代碼讀取的(已經由相反方向控制代碼寫入)。並且傳輸緩衝區包含的資料是

通過[zx_socket_write()]寫入該控制代碼的(可由對端控制代碼讀取)。

套接字物件可設定以下的訊號:

zx_socket_readable套接字中有可讀資料

zx_socket_writable資料可以寫入套接字

zx_socket_peer_closed此套接字的另一端已關閉。

zx_socket_peer_write_disabled永久關閉對端的寫入操作,可能是本地設定了zx_socket_shutdown_read操作,或者是為對端設定了zx_socket_shutdown_write。在寫操作關閉之前,寫入到此套接字中的資料,仍然可由此套介面成功讀取。

zx_socket_write_disabled永久關閉本端的寫入操作,可能是由本地設定了zx_socket_shutdown_write,或者為對端設定了zx_socket_shutdown_read

zx_socket_control_readable資料可從套接字的控制平面讀取

zx_socket_control_writable資料可寫入套接字控制平面.

zx_socket_share可通過[zx_socket_share()]傳送套接字.

zx_socket_accept可通過[zx_socket_accept()]接收套接字.

zx_socket_read_threshold在套接字上排隊等待讀取的資料超過了讀取閾值。

zx_socket_write_threshold套接字上可用於寫入的空間超過了寫入閾值。

套接字 Socket 定義

套接字介面可分為三類 公認埠 註冊埠 動態和 或私有埠 套接字,簡單的說就是通訊的兩方的一種約定,用套接字中的相關函式來完成通訊過程 應用層通過傳輸層進行資料通訊時,tcp和udp會遇到同時為多個應用程式程序提供併發服務的問題。多個tcp連線或多個應用程式程序可能需要通過同乙個 tcp協議埠傳輸資料...

監聽套接字 連線套接字

摘要 對於伺服器程式設計中最重要的一步等待並接受客戶的連線,那麼這一步在程式設計中如何完成,accept函式就是完成這一步的。它從核心中取出已經建立的客戶連線,然後把這個已經建立的連線返回給使用者程式,此時使用者程式就可以與自己的客戶進行點到點的通訊了。accept函式等待並接受客戶請求 inclu...

python套接字 python套接字基本使用

socket socket通常也稱作 套接字 用於描述ip位址和埠,應用程式通常通過 套接字 向網路發出請求或者應答網路請求,可以認為是一種計算機網路的資料結構,介面。它是網路程式設計的基礎 套接字還分為面向連線的和無連線的 第一種是指tcp型別套接字,在通訊前需要建立連線,這種連線是較為可靠的,使...