sendMessage抽象方法
- @Since("2.15")
将套接字控制消息和数据字节写入套接字。
将controlMessages
和最多count
字节的数据(从offset
开始)写入套接字。如果没有提供count
,则尽可能写入更多字节。如果不需要发送控制消息,请使用write。
当接收到控制消息时,它们将保留到下一次调用readMessage,此时所有当前可用的控制消息都将作为返回的SocketMessage的一部分提供。调用read将只读取数据字节,并且不会影响控制消息。
count
必须是正数(大于零)。
返回写入的字节数,该数字不能大于count
,也不能大于data.length - offset
。返回值为零表示没有发送控制消息。
此函数是非阻塞的,并且只有在套接字中有缓冲空间时才会写入数据。
如果消息无法发送,则抛出OSError。
不支持RawSecureSocket。
不支持Android、Fuchsia、Windows。
实现
@Since("2.15")
int sendMessage(List<SocketControlMessage> controlMessages, List<int> data,
[int offset = 0, int? count]);