public UdpTransport(IPacketContract <T> packetContract, ushort port) { _packetContract = packetContract; _port = port; _socket = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp); _receiveEvent = new SocketAsyncEventArgs(); _receiveEvent.Completed += ReceiveCompleted; _receiveEvent.SetBuffer(new byte[BUFFER_SIZE], 0, BUFFER_SIZE); _sendEvent = new SocketAsyncEventArgs(); _sendEvent.Completed += SendCompleted; _sendEvent.SetBuffer(new byte[BUFFER_SIZE], 0, BUFFER_SIZE); _sendQueue = new ConcurrentQueue <PacketContainer <T> >(); _disposed = 0; _sending = 0; }
public TcpTransport(IPacketContract <T> packetContract, IPEndPoint address) { _packetContract = packetContract; _address = address; _connectEvent = new SocketAsyncEventArgs(); _connectEvent.Completed += ConnectCompleted; _connectEvent.RemoteEndPoint = address; _receiveEvent = new SocketAsyncEventArgs(); _receiveEvent.Completed += ReceiveCompleted; _receiveEvent.SetBuffer(new byte[INITIAL_BUFFER_SIZE], 0, INITIAL_BUFFER_SIZE); _sendEvent = new SocketAsyncEventArgs(); _sendEvent.Completed += SendCompleted; _sendEvent.SetBuffer(new byte[INITIAL_BUFFER_SIZE], 0, INITIAL_BUFFER_SIZE); _sendQueue = new ConcurrentQueue <T>(); _disposed = 0; _sending = 0; }