Unity日常积累

Socket

#unity/日常积累 Socket.AcceptAsync 方法 参考 反馈 定义 命名空间: System.Net.Sockets 程序集: System.Net.Sockets.dll Socket.AcceptAsync 方法 参考 反馈 定义 命名空间: System.Net.Sockets 程序集: System.Net.Sockets.dll 1 public System.Threading.Tasks.Task<System.Net.Sockets.Socket> AcceptAsync (); 返回 Task<Socket> 使用接受的套接字完成的异步任务。 例外 InvalidOperationException 请求了无效操作。 如果接收方 Socket 未侦听连接或者绑定了接受的套接字,将发生此异常。 Bind(EndPoint) 和 Listen(Int32) 方法必须先于 AcceptAsync(SocketAsyncEventArgs) 方法调用。 如果套接字已连接或……

协奏

Socket

#unity/日常积累 Socket.ConnectAsync 方法 参考 反馈 定义 命名空间: System.Net.Sockets 程序集: System.Net.Sockets.dll 开始一个对远程主机连接的异步请求。 ConnectAsync(SocketType, ProtocolType, SocketAsyncEventArgs) Source: Socket.cs 1 public static bool ConnectAsync (System.Net.Sockets.SocketType socketType, System.Net.Sockets.ProtocolType protocolType, System.Net.Sockets.SocketAsyncEventArgs e); 参数 socketType SocketType SocketType 值之一。 protocolType ProtocolType ProtocolType 值之一。 e SocketAsyncEventArgs 要用于此异步套接字操作的 SocketAsyncEventArgs 对象。 返回 Boolean 如果 I/O 操作挂起,则为 true。 操作完成时,将引发 e 参数的 Completed 事件。 如果 I/O 操作同步……

协奏

Socket

#unity/日常积累 listen 函数 (winsock2.h) 项目 2024/03/04 反馈 本文内容 语法 参数 返回值 注解 显示另外 2 个 侦听函数将套接字置于侦听传入连接的状态。 语法 1 2 3 4 int WSAAPI listen( [in] SOCKET s, [in] int backlog ); 参数 [in] s 标识绑定的未连接的套接字的描述符。 [in] backlog 挂起的连接队列的最大长度。 如果设置为 SOMAXCONN,则负责套接字 的基础 服务提供商……

协奏

Socket

#unity/日常积累 Socket.SendAsync 方法 参考 反馈 定义 命名空间: System.Net.Sockets 程序集: System.Net.Sockets.dll 在连接的套接字上发送数据。 1 public System.Threading.Tasks.ValueTask<int> SendAsync (ReadOnlyMemory<byte> buffer, System.Threading.CancellationToken cancellationToken = default); 参数 buffer ReadOnlyMemory<Byte> 要发送的数据的缓冲区。 cancellationToken CancellationToken 可用于取消异步操作的取消标记。 返回 ValueTask<Int32> 以发送的字节数完成的异步任务。 例外 OperationCanceledException 取消令牌已取消。 此异常存储在返回的任务中。 注解 此方法将存储在任务中……

协奏

Buffer

#unity/日常积累 Buffer.BlockCopy的详细文档 语法 将从指定偏移量开始的源数组中指定数量的字节复制到以特定偏移量开始的目标数组。 1 2 3 4 5 6 7 public static void BlockCopy( Array src, int srcOffset, Array dst, int dstOffset, int count ) 参数 src 类型:System.Array 源缓冲区。 srcOffset 类型: System.Int32 基于零的字节偏移到src中。 dst 类型:……

协奏

IOCPNet网络库开发

#unity/日常积累 IOCP介绍 输入输出完成端口(Input/Output Completion Port,IOCP), 是支持多个同时发生的异步I/O操作的应用程序编程接口。 IOCP特别适合C/S模式网络服务器端模型。因为,让每一个socket有一个线程负 责同步(阻塞)数据处理,one-thread……

协奏

LastOperation

#unity/日常积累 SocketAsyncEventArgs.LastOperation 属性 参考 定义 命名空间: System.Net.Sockets 程序集: System.Net.Sockets.dll 获取最近使用此上下文对象执行的套接字操作类型。 1 public System.Net.Sockets.SocketAsyncOperation LastOperation { get; } 属性值 SocketAsyncOperation 一个 SocketAsyncOperation 实例,指示最近使用此上下文对象执行的套接字操作类型。 注解 此属性描述最近使用此 SocketAsyncEventArgs 对象完成的异步套接字操作。 此属性的值将 SocketAsyncOperation.None 一直 SocketAsyncEventArgs 用于启动异步套接字操作。……

协奏

Socket

#unity/日常积累 Socket.ReceiveAsync 方法 参考 反馈 定义 命名空间: System.Net.Sockets 程序集: System.Net.Sockets.dll ReceiveAsync(ArraySegment<Byte>) Source: Socket.Tasks.cs 接收连接的套接字发出的数据。 1 public System.Threading.Tasks.Task<int> ReceiveAsync (ArraySegment<byte> buffer); 参数 buffer ArraySegment<Byte> 接收的数据的缓冲区。 返回 Task<Int32> 以收到的字节数完成的异步任务。 ReceiveAsync(IList<ArraySegment<Byte>>) Source: Socket.Tasks.cs 接收连接的套接字发出的数据。 1 public System.Threading.Tasks.Task<int> ReceiveAsync (System.Collections.Generic.IList<ArraySegment<byte>> buffers); 参数 buffers IList<ArraySegment<Byte» 接收的数据的缓冲区列表。 返回 Task<Int32> 以收到的字节数完成的异步……

协奏

SocketAsyncEventArgs

#unity/日常积累 定义 命名空间: System.Net.Sockets 程序集: System.Net.Sockets.dll 获取在套接字操作中传输的字节数。 1 public int BytesTransferred { get; } 属性值 Int32 一个 Int32,包含在套接字操作中传输的字节数。 注解 此属性提供异步套接字操作中传输的字节数,这些字节可以接收或发送数据。 如果从读取操作返回零,则远程端已关闭连接。 此属性由除方法以……

协奏

SocketAsyncEventArgs

#unity/日常积累 SocketAsyncEventArgs 类 参考 反馈 定义 命名空间: System.Net.Sockets 程序集: System.Net.Sockets.dll Source: SocketAsyncEventArgs.cs 表示异步套接字操作。 1 public class SocketAsyncEventArgs : EventArgs, IDisposable 继承 Object EventArgs SocketAsyncEventArgs 实现 IDisposable 示例 下面的代码示例为使用 SocketAsyncEventArgs 类的套接字服务器实现连接逻辑。 接受连接后,从客户端读取的所有数据都发送回客户端。 继续读取并回显到客户端模式,直到客户端断开连接。 此示例使用的……

协奏