Grand Central Dispatchを使用して(メインキューではなく)キューにブロックを追加しています。このブロックにはループがあり、ループが通過するたびにわずか0.02秒の遅延が必要です。私はこのキューでiphone - Grand Central Dispatchのセカンダリスレッドでusleepを使用してもよろしいですか?
dispatch_async(myOwnQueue, ^{
// begin loop
// do stuff
usleep(20000);
// end loop
});
を使用しています。メインキューではないので、メインスレッドをブロックしません。 警告を::関数「はusleep」の暗黙の宣言を
はそれを行うために他の方法はあり
問題は、Xcodeのが不平を言うことでしょうか?
ありがとうございました。
はdispatch_afterよりよい解決策ではないでしょうか? – NSIntegerMax
ええ、ビジー待機は答えではありません。 dispatch_afterまたはNSTimer、またはdispatch_sourceタイマーを使用しますが、GCDスレッドではビジー待機しません。 GCDは、あなたが提出した作業項目がブロックされないときに最も効果的です。 – ipmcc