<PackageReference Include="NETStandard.Library" Version="2.0.2" />

System.Net.Sockets.Socket

public class Socket : IDisposable
namespace System.Net.Sockets { public class Socket : IDisposable { public AddressFamily AddressFamily { get; } public int Available { get; } public bool Blocking { get; set; } public bool Connected { get; } public bool DontFragment { get; set; } public bool DualMode { get; set; } public bool EnableBroadcast { get; set; } public bool ExclusiveAddressUse { get; set; } public IntPtr Handle { get; } public bool IsBound { get; } public LingerOption LingerState { get; set; } public EndPoint LocalEndPoint { get; } public bool MulticastLoopback { get; set; } public bool NoDelay { get; set; } public static bool OSSupportsIPv4 { get; } public static bool OSSupportsIPv6 { get; } public ProtocolType ProtocolType { get; } public int ReceiveBufferSize { get; set; } public int ReceiveTimeout { get; set; } public EndPoint RemoteEndPoint { get; } public int SendBufferSize { get; set; } public int SendTimeout { get; set; } public SocketType SocketType { get; } public static bool SupportsIPv4 { get; } public static bool SupportsIPv6 { get; } public short Ttl { get; set; } public bool UseOnlyOverlappedIO { get; set; } public Socket(AddressFamily addressFamily, SocketType socketType, ProtocolType protocolType); public Socket(SocketInformation socketInformation); public Socket(SocketType socketType, ProtocolType protocolType); public Socket Accept(); public bool AcceptAsync(SocketAsyncEventArgs e); public IAsyncResult BeginAccept(AsyncCallback callback, object state); public IAsyncResult BeginAccept(int receiveSize, AsyncCallback callback, object state); public IAsyncResult BeginAccept(Socket acceptSocket, int receiveSize, AsyncCallback callback, object state); public IAsyncResult BeginConnect(EndPoint remoteEP, AsyncCallback callback, object state); public IAsyncResult BeginConnect(IPAddress address, int port, AsyncCallback requestCallback, object state); public IAsyncResult BeginConnect(IPAddress[] addresses, int port, AsyncCallback requestCallback, object state); public IAsyncResult BeginConnect(string host, int port, AsyncCallback requestCallback, object state); public IAsyncResult BeginDisconnect(bool reuseSocket, AsyncCallback callback, object state); public IAsyncResult BeginReceive(byte[] buffer, int offset, int size, SocketFlags socketFlags, AsyncCallback callback, object state); public IAsyncResult BeginReceive(byte[] buffer, int offset, int size, SocketFlags socketFlags, out SocketError errorCode, AsyncCallback callback, object state); public IAsyncResult BeginReceive(IList<ArraySegment<byte>> buffers, SocketFlags socketFlags, AsyncCallback callback, object state); public IAsyncResult BeginReceive(IList<ArraySegment<byte>> buffers, SocketFlags socketFlags, out SocketError errorCode, AsyncCallback callback, object state); public IAsyncResult BeginReceiveFrom(byte[] buffer, int offset, int size, SocketFlags socketFlags, ref EndPoint remoteEP, AsyncCallback callback, object state); public IAsyncResult BeginReceiveMessageFrom(byte[] buffer, int offset, int size, SocketFlags socketFlags, ref EndPoint remoteEP, AsyncCallback callback, object state); public IAsyncResult BeginSend(byte[] buffer, int offset, int size, SocketFlags socketFlags, AsyncCallback callback, object state); public IAsyncResult BeginSend(byte[] buffer, int offset, int size, SocketFlags socketFlags, out SocketError errorCode, AsyncCallback callback, object state); public IAsyncResult BeginSend(IList<ArraySegment<byte>> buffers, SocketFlags socketFlags, AsyncCallback callback, object state); public IAsyncResult BeginSend(IList<ArraySegment<byte>> buffers, SocketFlags socketFlags, out SocketError errorCode, AsyncCallback callback, object state); public IAsyncResult BeginSendFile(string fileName, AsyncCallback callback, object state); public IAsyncResult BeginSendFile(string fileName, byte[] preBuffer, byte[] postBuffer, TransmitFileOptions flags, AsyncCallback callback, object state); public IAsyncResult BeginSendTo(byte[] buffer, int offset, int size, SocketFlags socketFlags, EndPoint remoteEP, AsyncCallback callback, object state); public void Bind(EndPoint localEP); public static void CancelConnectAsync(SocketAsyncEventArgs e); public void Close(); public void Close(int timeout); public void Connect(EndPoint remoteEP); public void Connect(IPAddress address, int port); public void Connect(IPAddress[] addresses, int port); public void Connect(string host, int port); public bool ConnectAsync(SocketAsyncEventArgs e); public static bool ConnectAsync(SocketType socketType, ProtocolType protocolType, SocketAsyncEventArgs e); public void Disconnect(bool reuseSocket); public bool DisconnectAsync(SocketAsyncEventArgs e); public void Dispose(); protected virtual void Dispose(bool disposing); public SocketInformation DuplicateAndClose(int targetProcessId); public Socket EndAccept(out byte[] buffer, IAsyncResult asyncResult); public Socket EndAccept(out byte[] buffer, out int bytesTransferred, IAsyncResult asyncResult); public Socket EndAccept(IAsyncResult asyncResult); public void EndConnect(IAsyncResult asyncResult); public void EndDisconnect(IAsyncResult asyncResult); public int EndReceive(IAsyncResult asyncResult); public int EndReceive(IAsyncResult asyncResult, out SocketError errorCode); public int EndReceiveFrom(IAsyncResult asyncResult, ref EndPoint endPoint); public int EndReceiveMessageFrom(IAsyncResult asyncResult, ref SocketFlags socketFlags, ref EndPoint endPoint, out IPPacketInformation ipPacketInformation); public int EndSend(IAsyncResult asyncResult); public int EndSend(IAsyncResult asyncResult, out SocketError errorCode); public void EndSendFile(IAsyncResult asyncResult); public int EndSendTo(IAsyncResult asyncResult); public object GetSocketOption(SocketOptionLevel optionLevel, SocketOptionName optionName); public void GetSocketOption(SocketOptionLevel optionLevel, SocketOptionName optionName, byte[] optionValue); public byte[] GetSocketOption(SocketOptionLevel optionLevel, SocketOptionName optionName, int optionLength); public int IOControl(int ioControlCode, byte[] optionInValue, byte[] optionOutValue); public int IOControl(IOControlCode ioControlCode, byte[] optionInValue, byte[] optionOutValue); public void Listen(int backlog); public bool Poll(int microSeconds, SelectMode mode); public int Receive(byte[] buffer); public int Receive(byte[] buffer, int offset, int size, SocketFlags socketFlags); public int Receive(byte[] buffer, int offset, int size, SocketFlags socketFlags, out SocketError errorCode); public int Receive(byte[] buffer, int size, SocketFlags socketFlags); public int Receive(byte[] buffer, SocketFlags socketFlags); public int Receive(IList<ArraySegment<byte>> buffers); public int Receive(IList<ArraySegment<byte>> buffers, SocketFlags socketFlags); public int Receive(IList<ArraySegment<byte>> buffers, SocketFlags socketFlags, out SocketError errorCode); public bool ReceiveAsync(SocketAsyncEventArgs e); public int ReceiveFrom(byte[] buffer, int offset, int size, SocketFlags socketFlags, ref EndPoint remoteEP); public int ReceiveFrom(byte[] buffer, int size, SocketFlags socketFlags, ref EndPoint remoteEP); public int ReceiveFrom(byte[] buffer, ref EndPoint remoteEP); public int ReceiveFrom(byte[] buffer, SocketFlags socketFlags, ref EndPoint remoteEP); public bool ReceiveFromAsync(SocketAsyncEventArgs e); public int ReceiveMessageFrom(byte[] buffer, int offset, int size, ref SocketFlags socketFlags, ref EndPoint remoteEP, out IPPacketInformation ipPacketInformation); public bool ReceiveMessageFromAsync(SocketAsyncEventArgs e); public static void Select(IList checkRead, IList checkWrite, IList checkError, int microSeconds); public int Send(byte[] buffer); public int Send(byte[] buffer, int offset, int size, SocketFlags socketFlags); public int Send(byte[] buffer, int offset, int size, SocketFlags socketFlags, out SocketError errorCode); public int Send(byte[] buffer, int size, SocketFlags socketFlags); public int Send(byte[] buffer, SocketFlags socketFlags); public int Send(IList<ArraySegment<byte>> buffers); public int Send(IList<ArraySegment<byte>> buffers, SocketFlags socketFlags); public int Send(IList<ArraySegment<byte>> buffers, SocketFlags socketFlags, out SocketError errorCode); public bool SendAsync(SocketAsyncEventArgs e); public void SendFile(string fileName); public void SendFile(string fileName, byte[] preBuffer, byte[] postBuffer, TransmitFileOptions flags); public bool SendPacketsAsync(SocketAsyncEventArgs e); public int SendTo(byte[] buffer, int offset, int size, SocketFlags socketFlags, EndPoint remoteEP); public int SendTo(byte[] buffer, int size, SocketFlags socketFlags, EndPoint remoteEP); public int SendTo(byte[] buffer, EndPoint remoteEP); public int SendTo(byte[] buffer, SocketFlags socketFlags, EndPoint remoteEP); public bool SendToAsync(SocketAsyncEventArgs e); public void SetIPProtectionLevel(IPProtectionLevel level); public void SetSocketOption(SocketOptionLevel optionLevel, SocketOptionName optionName, bool optionValue); public void SetSocketOption(SocketOptionLevel optionLevel, SocketOptionName optionName, byte[] optionValue); public void SetSocketOption(SocketOptionLevel optionLevel, SocketOptionName optionName, int optionValue); public void SetSocketOption(SocketOptionLevel optionLevel, SocketOptionName optionName, object optionValue); public void Shutdown(SocketShutdown how); } }