客户端发:
TcpClient1.SendBuf(CopyBuffer^,BytesCopied);服务端收:
FileWrite(Dest, CopyBuffer^, BytesCopied); 问题是写硬盘来不及!(在客户端发送前,加sleep(10),收发成功)有没有更好的办法?能用TcpClient1.PeekBuf(PeekBuffer^,ChunkSize);??还有这个呢if TcpClient1.WaitForData(100) then望大哥哥们多给点知识,咱是新人;)

解决方案 »

  1.   

    你可改用tcp/ip传送(不会造成数据丢失),或着开辟一块大内存区域把你收到先堆积在内存中,使用异步io写到硬盘。
      

  2.   

    大家能给我一段Demo吗?用于  开内存  用一个线程再往硬盘上写Delphi有自带的吗?
      

  3.   

    开线程时注意以下线程同步  因为你是一遍接数据一边往硬盘写
    到这里去看看可能会对你有帮助 不过里面没有提到线程同步 线程同步
    你在找些资料看看 找不到再问我
    http://expert.csdn.net/Expert/topic/2026/2026108.xml?temp=.3392755
      

  4.   

    大家能给我一段Demo吗?用于  开内存  用一个线程再往硬盘上写