コード例 #1
0
ファイル: RedisConnection.cs プロジェクト: arccoza/redu
        public void Open()
        {
            var s = SharedSocket;

            SocketPool = SocketPool == null ? new Util.ResourcePool<Socket>(CreateSocket, DeleteSocket) : SocketPool;
            EventArgsPool = EventArgsPool == null ? new Util.ResourcePool<SocketAsyncEventArgs>(CreateEventArg, DeleteEventArg) : EventArgsPool;

            if (s != null && !s.Connected)
            {
                DeleteSocket(s);
            }
            if (s == null)
            {
                s = CreateSocket();
                s.Connect(Host, Port);
                SharedSocket = s;
            }
        }
コード例 #2
0
ファイル: RedisConnection.cs プロジェクト: arccoza/redu
 private void Init()
 {
     SocketPool = new Util.ResourcePool<Socket>(CreateSocket, DeleteSocket, 1, 10);
     EventArgsPool = new Util.ResourcePool<SocketAsyncEventArgs>(CreateEventArg, DeleteEventArg, 5, 30);
     _socketEventHandler = new EventHandler<SocketAsyncEventArgs>(ProcessSocketEvents);
     _rbuffer = new StringBuilder();
     _rbuffer2 = new List<byte>();
 }
コード例 #3
0
ファイル: RedisConnection.cs プロジェクト: arccoza/redu
        public void Close()
        {
            var s = SharedSocket;
            DeleteSocket(s);
            SharedSocket = null;

            EventArgsPool.Dispose();
            SocketPool.Dispose();

            EventArgsPool = null;
            SocketPool = null;
        }