用法:
socket.sendmsg(buffers[, ancdata[, flags[, address]]])
將正常和輔助數據發送到套接字,從一係列緩衝區收集非輔助數據並將其連接成單個消息。
buffers
參數將非輔助數據指定為 bytes-like 對象的可迭代對象(例如bytes
對象);操作係統可以對可以使用的緩衝區數量設置限製(sysconf()
valueSC_IOV_MAX
)。ancdata
參數將輔助數據(控製消息)指定為零個或多個元組的可迭代(cmsg_level, cmsg_type, cmsg_data)
,其中cmsg_level
和cmsg_type
分別是指定協議級別和協議特定類型的整數,而cmsg_data
是一個保存相關數據的bytes-like 對象。請注意,某些係統(特別是沒有CMSG_SPACE()
的係統)可能支持每次調用僅發送一個控製消息。flags
參數默認為 0,並且與send()
具有相同的含義。如果提供了address
而不是None
,它會設置消息的目標地址。返回值是發送的非輔助數據的字節數。以下函數在支持
SCM_RIGHTS
機製的係統上通過AF_UNIX
套接字發送文件說明符列表fds
。另見recvmsg()
。import socket, array def send_fds(sock, msg, fds): return sock.sendmsg([msg], [(socket.SOL_SOCKET, socket.SCM_RIGHTS, array.array("i", fds))])
可用性:大多數 Unix 平台,可能還有其他平台。
使用參數
self
,address
引發審計事件socket.sendmsg
。3.3 版中的新函數。
在 3.5 版中更改:如果係統調用被中斷並且信號處理程序沒有引發異常,則該方法現在重試係統調用而不是引發
InterruptedError
例外(見PEP 475理由)。
相關用法
- Python socket.socket.recvmsg_into用法及代碼示例
- Python socket.socket.recvmsg用法及代碼示例
- Python socket.create_server用法及代碼示例
- Python socket.getaddrinfo用法及代碼示例
- Python sorted()用法及代碼示例
- Python sort()用法及代碼示例
- Python sorted()和sort()用法及代碼示例
- Python sklearn.cluster.MiniBatchKMeans用法及代碼示例
- Python scipy.ndimage.binary_opening用法及代碼示例
- Python scipy.signal.windows.tukey用法及代碼示例
- Python scipy.stats.mood用法及代碼示例
- Python str.isidentifier用法及代碼示例
- Python sklearn.metrics.fbeta_score用法及代碼示例
- Python scipy.fft.ihfftn用法及代碼示例
- Python scipy.stats.normaltest用法及代碼示例
- Python scipy.ndimage.convolve1d用法及代碼示例
- Python scipy.stats.arcsine用法及代碼示例
- Python scipy.interpolate.UnivariateSpline.antiderivative用法及代碼示例
- Python scipy.linalg.hadamard用法及代碼示例
- Python sklearn.linear_model.PassiveAggressiveRegressor用法及代碼示例
注:本文由純淨天空篩選整理自python.org大神的英文原創作品 socket.socket.sendmsg。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。