我用C#写了一个数据发送、接收程序
接受的时候总是接收不完,原因是数据还没接收完就开始进行下面的数据处理了,需要在接受和数据处理之间加一段延时程序,如何实现

解决方案 »

  1.   

    用个timer就可以实现了
    在第一段程序完成后,启动timer,timer的执行的时间可以你自己估计。
    在timer里计算i++,当i到了一定的数时,比如1000,就停止timer,然后执行下一段程序
      

  2.   

    ClientSocket = new System.Net.Sockets.Socket(System.Net.Sockets.AddressFamily.InterNetwork,System.Net.Sockets.SocketType.Stream,System.Net.Sockets.ProtocolType.Tcp );
    ClientSocket.Connect(myIPEndPoint);
    ClientSocket.Blocking = true;while(boolStop)
    {
      try
      {
        byte[] recvbyte = new byte[1024];
       int count = ClientSocket.Receive(recvbyte,ClientSocket.Available ,System.Net.Sockets.SocketFlags.None ) ;

    .......
      

  3.   

    用两个线程。一个接收,一个发送。用join连起就行了
      

  4.   

    请参考此:
    http://blog.csdn.net/zhiang75/archive/2004/08/16/75915.aspx