/// <summary>
        /// Constructs an AsyncSocketClient.
        /// </summary>
        /// <param name="bufferSize">The size of the receive buffer.</param>
        /// <param name="stateObject">The object to use for sending state
        /// information.</param>
        /// <param name="msgHandler">The user-defined message handling method.
        /// </param>
        /// <param name="closingHandler">The user-defined socket closing
        /// handling method.</param>
        /// <param name="errHandler">The user defined error handling method.
        /// </param>
        public AsyncSocketClient(Int32 bufferSize, object stateObject,
		                         MessageHandler msgHandler, SocketClosingHandler closingHandler,
		                         ErrorHandler errHandler)
        {
            _Log.DebugFormat("Initializing new instance ({0}).", this.GetHashCode());

            _Buffer = new byte[BUFFER_SIZE];
            _StateObject = stateObject;

            //set handlers
            _MessageHandler = msgHandler;
            _SocketCloseHandler = closingHandler;
            _ErrorHandler = errHandler;

            //set the asynchronous method handlers
            _CallbackReadMethod = new AsyncCallback(ReceiveComplete);
            _CallbackWriteMethod = new AsyncCallback(SendComplete);

            //haven't been disposed yet
            _IsDisposed = false;
        }
示例#2
0
        /// <summary>
        /// Constructs an AsyncSocketClient.
        /// </summary>
        /// <param name="bufferSize">The size of the receive buffer.</param>
        /// <param name="stateObject">The object to use for sending state
        /// information.</param>
        /// <param name="msgHandler">The user-defined message handling method.
        /// </param>
        /// <param name="closingHandler">The user-defined socket closing
        /// handling method.</param>
        /// <param name="errHandler">The user defined error handling method.
        /// </param>
        public AsyncSocketClient(Int32 bufferSize, object stateObject,
                                 MessageHandler msgHandler, SocketClosingHandler closingHandler,
                                 ErrorHandler errHandler)
        {
            //allocate buffer
            //			clientBufferSize = bufferSize;
            //			_Buffer = new byte[clientBufferSize];

            this._Buffer      = new byte[BUFFER_SIZE];
            this._BufferSize  = 0;
            this._StateObject = stateObject;

            //set handlers
            this._MessageHandler     = msgHandler;
            this._SocketCloseHandler = closingHandler;
            this._ErrorHandler       = errHandler;

            //set the asynchronous method handlers
            this._CallbackReadMethod  = new AsyncCallback(this.ReceiveComplete);
            this._CallbackWriteMethod = new AsyncCallback(this.SendComplete);

            //haven't been disposed yet
            this._IsDisposed = false;
        }