【问题标题】:How to increase Indy idFTP buffer?如何增加 Indy idFTP 缓冲区?
【发布时间】:2014-12-20 01:44:03
【问题描述】:

对于 idFTP,OnFtpWork 事件确实经常触发。如果它经常将其写入磁盘,那将是浪费时间。有没有办法增加缓冲区,使其每秒写入磁盘的频率不超过一次?

【问题讨论】:

    标签: delphi-xe indy


    【解决方案1】:

    您可以在执行传输之前设置TIdFTP.IOHandler.SendBufferSizeTIdFTP.IOHandler.RecvBufferSize 属性。它们将被复制到用于传输连接的IOHandler

    或者您可以使用TIdFTP.OnDataChannelCreate 事件来设置ADataChannel.IOHandler.SendBufferSizeADataChannel.IOHandler.RecvBufferSize 属性。

    或者你可以实现一个TFileStream派生类,它在内部使用缓冲文件I/O,那么你就不必搞乱TIdFTP的缓冲区了。

    【讨论】:

      猜你喜欢
      • 2016-07-20
      • 2013-05-04
      • 1970-01-01
      • 2011-11-04
      • 1970-01-01
      • 1970-01-01
      • 2019-08-06
      • 2022-01-17
      • 2011-07-08
      相关资源
      最近更新 更多