2016-04-28 4 views
0

NSFileManagerを使用して1つのドライブから別のドライブに多くのファイルをコピーしています。私は、ユーザーを見ていますいくつかのケースではNSFileManagerの速度CopyFileAtPathは、場合によってはファインダーとは大きく異なります。

が言う「アプリが使用できない、それはUSB2接続で、0.33メガバイト/秒で転送します。私はドラッグ&ドロップすると、私に10分を取るだろうか」

私はバックグラウンドスレッドでこれを実行しています - おそらく問題でしょうか?

secondaryTask=dispatch_queue_create(  "com.myorg.myapp.task2",NULL); 
dispatch_sync(secondaryTask,^{ 

    NSFileManager *manager; 
    [manager copyItemAtPath:sourceFile toPath:filePath error:&error]; 

}); 

答えて

0

これは実際に私のアプリを絞っているOS Xに関連しているようです。一部のユーザーは実際にログにこれを表示します:

5/9/16 15:26:31.000カーネル[0]:プロセスMyApp [937] thread 36146がCPUを奪ってしまいました!これは180秒以上に50%以上のCPU(実際の最近の使用率:91%)を使用していました。スレッドの寿命のCPU使用率情報台帳90.726617秒、(49.587139ユーザー、41.139478システム):バランス:90006865992クレジット:90006865992デビット:0上限:900億(50%)期間:最後のリフィルから1800億時間(ナノ秒):98013987431

だから...これはGCDの質問です...そして私はアップルと直接それを持ってきました。

関連する問題