otTcpCircularSendBuffer
#include <tcp_ext.h>
代表與 TCP 端點搭配使用的循環傳送緩衝區。
摘要
使用環形傳送緩衝區是選用項目。應用程式可透過 TCP 端點直接管理 otLinkedBuffers 來傳送資料。不過,某些應用程式可能會讓您更容易使用環狀傳送緩衝區;這類應用程式可以呼叫 otTcpCircularSendBufferWrite() 將環形傳送緩衝區「附加」到 TCP 端點,然後在該 TCP 端點上傳送資料,仰賴循環傳送緩衝區來管理基礎 otLinkedBuffers。
otTcpCircularSendBuffer 建構在 otTcpEndpoint 提供的 otLinkedBuffer 型 API 上。附加至 otTcpEndpoint 後,otTcpCircularSendBuffer 負責管理連線的 otLinkedBuffers。也就是說,otTcpCircularSendBuffer 附加至 otTcpEndpoint 後,應用程式就不應對該 otTcpEndpoint 呼叫 otTcpSendByReference() 或 otTcpSendByExtension()。應用程式應改用 otTcpCircularSendBufferWrite() 將資料新增至傳送緩衝區。
otTcpForwardProgress() 回呼是使用者,在圓形傳送緩衝區中何時可用空間。在已連結 otTcpCircularSendBuffer 的 otTcpEndpoint 上,於回呼函式開始時,在附加的 otTcpCircularSendBuffer建議使用者「不要」安裝 otTcpSendDone() 回呼,因為所有 otLinkedBuffers 的管理作業都會由循環傳送緩衝區處理。
應用程式不應直接檢查這個結構的欄位,應只能透過 TCP Circular Send Buffer API 功能互動,並在這個檔案中提供簽名。
公開屬性 |
|
---|---|
mCapacity
|
size_t
環狀傳送緩衝區的長度。
|
mCapacityUsed
|
size_t
儲存在傳送緩衝區中的位元組數。
|
mDataBuffer
|
uint8_t *
環狀傳送緩衝區中的資料指標。
|
mFirstSendLinkIndex
|
uint8_t
|
mSendLinks[2]
|
|
mStartIndex
|
size_t
傳送緩衝區中第一個有效位元組的索引。
|
公開屬性
mCapacity
size_t otTcpCircularSendBuffer::mCapacity
環狀傳送緩衝區的長度。
mCapacityUsed
size_t otTcpCircularSendBuffer::mCapacityUsed
儲存在傳送緩衝區中的位元組數。
mDataBuffer
uint8_t * otTcpCircularSendBuffer::mDataBuffer
環狀傳送緩衝區中的資料指標。
mFirstSendLinkIndex
uint8_t otTcpCircularSendBuffer::mFirstSendLinkIndex
mSendLinks
otLinkedBuffer otTcpCircularSendBuffer::mSendLinks[2]
mStartIndex
size_t otTcpCircularSendBuffer::mStartIndex
傳送緩衝區中第一個有效位元組的索引。
資源
OpenThread API 參考資料主題源自原始碼,請前往 GitHub 取得。如要瞭解詳情或對說明文件做出貢獻,請參閱資源。