Ejemplo n.º 1
0
        /// <summary>
        /// 处理异步收到的数据,在此方法内进行解包处理。
        /// </summary>
        /// <param name="asyncArgs">接收到的异步事件参数。</param>
        protected void OnReceive(SocketAsyncEventArgs asyncArgs)
        {
            var packetizer = this.Packetizer;

            if (packetizer == null)
            {
                throw new InvalidOperationException("The value of 'Packetizer' property is null.");
            }

            var buffer = new Zongsoft.Common.Buffer(asyncArgs.Buffer, asyncArgs.Offset, asyncArgs.BytesTransferred);

            foreach (var receivedObject in packetizer.Unpack(buffer))
            {
                //激发数据接收完成事件
                this.RaiseReceived(receivedObject);
            }
        }
Ejemplo n.º 2
0
		/// <summary>
		/// 处理异步收到的数据,在此方法内进行解包处理。
		/// </summary>
		/// <param name="asyncArgs">接收到的异步事件参数。</param>
		protected void OnReceive(SocketAsyncEventArgs asyncArgs)
		{
			var packetizer = this.Packetizer;

			if(packetizer == null)
				throw new InvalidOperationException("The value of 'Packetizer' property is null.");

			var buffer = new Zongsoft.Common.Buffer(asyncArgs.Buffer, asyncArgs.Offset, asyncArgs.BytesTransferred);

			foreach(var receivedObject in packetizer.Unpack(buffer))
			{
				//激发数据接收完成事件
				this.RaiseReceived(receivedObject);
			}
		}