バックグラウンド・プロセスが必要です。糸?
-
06-09-2019 - |
質問
私は毎分かそこらを実行するために、バックグラウンド・プロセスを必要としています。私は、このプロセスは、アプリケーションの残りの応答性に干渉したくありません。これは、スレッドのための良い候補でしょうか?もしそうなら、どのように私はスレッドをセットアップすることをお勧め - 特に、どのクラス/メソッドがに見て良いでしょう。
?解決
これは、バックグラウンド・プロセスがどのように密接に結びついによって異なります。バックグラウンドで動作する別のプログラムを作るために良いアイデアかもしれません。
開始するには、Appleのを見てみましょうに導きますスレッドがを。
おそらく最初の他のソリューションを試してみてください - あなたは、あなたがその背後にある考え方と注意点を理解していることを確認したいと思うので、マルチスレッドプログラミングは、心臓の弱いためではありません。この「バックグラウンド・プロセスは、」非常に重いではない場合、あなたはほぼ確実にちょうどあなたのメインスレッドでタイマーを使用して逃げることができました。それは密接にアプリの内部に結び付けられていない場合は、「労働者」プログラムは良い考えかもしれません。
他のヒント
操作としてあなたの仕事のユニットをパッケージ化し、必要に応じてそれをオフに解雇 -
これはNSOperation
とNSOperationQueue
のためのかなり良い候補のように聞こえます。 「毎分ほど」ビットを行うため、NSTimer
は驚くオプションです。
これは、実際にそれがそうでへのアクセスを必要としないどのリソース、バックグラウンド・プロセスが何をしているかに依存します。あなただけのsomeMethodを呼び出したい場合:毎分は、NSTimerを使用しています。あなたが本当にNSOperationQueueようなものが必要な場合は、私は、現在の実装ではいくつかのバグに対処し、この交換を検討してお勧めしたい。
所属していません StackOverflow