TcpListener+TcpClient的传送效率问题
我写了这么两个函数来实现一个简单的点对点聊天,但是发现发出信息后要等很长时间才能收到。同样的网络环境,用socket.send和socket.receive来实现同样的功能则速度很快。求高手给出解释。     
 以下是我实现功能的自己写的类,可以拿去试试,速度很慢 
 using   System; 
 using   System.Net.Sockets; 
 using   System.IO;   
 namespace   p2pbase 
 { 
 	///    <summary>  
 	///   Class1   的摘要说明。 
 	///    </summary>  
 	public   class   P2P 
 	{  		 
 		private   Socket   socket   =   new   Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp); 
                         private   TcpListener   tcpl;  	 
 		public   P2P() 
 		{ 
 		} 
 		public   void   listen(int   port)//开始监听 
 		{ 
 			tcpl   =   new   TcpListener(port);  
                                                                   tcpl.Start();    
 		} 
 		public   string   Accept()//接受信息 
 		{ 
 			Socket   s   =   tcpl.AcceptSocket(); 
 			Byte[]   stream   =   new   Byte[80]; 
 			int   i=s.Receive(stream)   ; 
 			string   message   =   System.Text.Encoding.UTF8.GetString(stream,0,i);   
 			return   (message); 
 		} 
 		public   void   Send(string   ip,int   port,string   msg)//发送信息 
 		{  			 
       TcpClient   tcpc   =   new   TcpClient(ip,port); 
       NetworkStream   tcpStream   =   tcpc.GetStream();    
 			StreamWriter   reqStreamW   =   new   StreamWriter(tcpStream); 
 			reqStreamW.Write(msg); 
 			reqStreamW.Flush(); 
 			tcpStream.Close(); 
 			tcpc.Close(); 
 		} 
 		public   void   Stop()//结束监听 
 		{ 
 			tcpl.Stop(); 
 		} 
 	} 
 }
------解决方案--------------------up
------解决方案--------------------TcpClient的效率是比Socket要低,主要是因为TCPCLient是在Socket上又封装了一层。而且使用了流这么一个东西!所以会比较慢!
------解决方案--------------------越是底层的越快。
------解决方案--------------------tcp模型中,完成端口效率最高