我正在开发一个涉及一些 SFTP 功能的小型免费 Cocoa 应用程序,特别是处理上传。该应用程序即将完成,但是在上传包含大量文件的文件夹时,我遇到了一个非常糟糕的问题。
我正在使用ConnectionKit来处理上传:
CKTransferRecord * record;
record = [connection recursivelyUpload:@"/Users/me/large-folder"
to:@"/remote/directory"];
这适用于大多数文件和文件夹。尽管在这种情况下 @"/Users/me/large-folder" 中有超过 300 个文件。调用此方法将我的 CPU 旋转到 100% 大约 30 秒,并且我的应用程序没有响应(mac 旋转球)。30 秒后,我的上传已排队并且工作正常,但这并不理想。显然,枚举这些文件的任何内容都会导致我的应用程序锁定直到完成。
不知道该怎么做。我对几乎任何解决方案都持开放态度——即使使用不同的框架,尽管我已经完成了我的研究,并且ConnectionKit似乎是目前最好的解决方案。
有任何想法吗?