[转]SuperSocket

    public class SocketServer : AppServer<AppSession>
    {
        public SocketServer()
            : base(new DefaultReceiveFilterFactory<FixedLengthReceiveFilter, StringRequestInfo>())
        {

        }
    }

    class FixedLengthReceiveFilter : FixedSizeReceiveFilter<StringRequestInfo>
    {
        public FixedLengthReceiveFilter() : base(9) { }

        protected override StringRequestInfo ProcessMatchedRequest(byte[] buffer, int offset, int length, bool toBeCopied)
        {
            byte[] tmp = buffer.Skip(offset).Take(length).ToArray();
            string[] result = Encoding.ASCII.GetString(tmp);
            return new StringRequestInfo("KeyInfo", "BodyInfo", result);
        }
    }

 转自:http://docs.supersocket.net/v1-6/zh-CN/Implement-Your-Own-Communication-Protocol-with-IRequestInfo,-IReceiveFilter-and-etc

posted on 2018-08-03 13:38  z5337  阅读(233)  评论(0编辑  收藏  举报