Beispiel #1
0
        private static void ListenProc()
        {
            try{
                while (true)
                {
                    if (Listener == null)
                    {
                        Console.WriteLine("NULLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL>>>>>>>>>>>>>>>>");
                        break;
                    }
                    //Console.WriteLine ("Waiting for client!");
                    //Console.WriteLine(Listener);
                    TcpClient client = Listener.AcceptTcpClient();
                    client.NoDelay        = true;
                    client.Client.NoDelay = true;

                    //Console.WriteLine ("Client accepted!");
                    lock (threadPool){
                        threadPool.QueueUserWorkItem(ThreadWork, client);
                    }
                }
            }
            catch (SocketException e) {
                Console.WriteLine("SocketException: {0}", e);
            }
        }
Beispiel #2
0
        public void TestThreadPool()
        {
            SimpleLockThreadPool pool = new SimpleLockThreadPool(64);
            context curr = new context();

            for (int i = 0; i < 10; i++)
            {
                curr = new context();
                curr.processNumber = i;
                pool.QueueUserWorkItem(ThreadWorkTest, curr);
            }

            pool.Dispose();
        }
Beispiel #3
0
        private static void ListenProc()
        {
            try{
                while (true)
                {
                    if (Listener == null)
                    {
                        break;
                    }

                    TcpClient client = Listener.AcceptTcpClient();
                    Console.WriteLine("Client accepted!");

                    threadPool.QueueUserWorkItem(ThreadWork, client);
                }
            }
            catch (SocketException e) {
                Console.WriteLine("SocketException: {0}", e);
            }
        }