1

残りのデータをサーバーにアップロードする必要がありますがapplication:didFinishLaunchingWithOptions、時間がかかり、時間内に起動を完了できないため、最終的にアプリが強制終了される可能性があるため、次を使用しました。

[myObject performSelector:withObject:afterDelay:]

0.2fの遅延で、application:didFinishLaunchingWithOptions終了させますが、それは良い考えとは思えないので、直後にセレクターを実行する方法はありapplication:didFinishLaunchingWithOptionsますか?

あることは知っていますapplicationDidBecomeActiveが、で実行する必要がありapplication:didFinishLaunchingWithOptionsます。

4

1 に答える 1

3

0の遅延を使用すると、制御が実行ループに戻るとすぐに実行されます。

ただし、これがappDidFinishLaunchingで長時間ブロックされている場合は、いつ実行してもブロックされます。このコードをバックグラウンドスレッドに移動する必要があります。メインスレッドでの同期ネットワークアクセスは決して良い考えではありません。

于 2012-09-25T00:19:47.197 に答える