关于socket类的问题
我是个初学者,下面是我写的一个简单例子,服务器端的,  
  private void button1_Click(object sender, EventArgs e)
         {
             IPHostEntry local = Dns.GetHostByName(Dns.GetHostName());
             IPEndPoint iep = new IPEndPoint(local.AddressList[0], 3434);
             Socket localSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
             localSocket.Bind(iep);
             localSocket.Listen(10);
             Socket clientSocket;
             //while (true)
             //{
                  clientSocket = localSocket.Accept();//程序不是阻塞在这了吗?为什么一运行,窗体上就显示无响应
                  this.listBox1.Items.Add(((IPEndPoint)(clientSocket.RemoteEndPoint)).Address);
           //  }
                  clientSocket.Shutdown(SocketShutdown.Both);
                  clientSocket.Close();
         }
为什么当我点击相应按钮时,窗体就显示无响应。
------解决方案--------------------accept()方法会阻塞当前主线程,应该创建一个新的线程来负责调用该方法。
------解决方案--------------------clientSocket = localSocket.Accept()阻塞当前线程,应该在其他线程里面处理,或者在当前线程里面用BeginAccept就不会阻塞了。