私は自分のプロジェクトの1つを整理し、私が頻繁に再利用するソースの一部を単一のクラスで取り除きたいと思っていました。 このクラスはWebサービスへのリクエストを処理しますが、これまでのところはすべて問題ありません。自分のクラスにコードを抽出するまでは、これらのリクエストを呼び出しクラスのスレッドとコールバックで処理しました。今iOSスレッド - コールバックのベストプラクティス
I "ベストプラクティス" という質問があります:私は(簡体字)のような何かを私のコードで
を:
(void)foo{
Helper *h =[[Helper alloc]init];
[h doRequest];
}
doRequestは(独自のクラスで)ネットワークのアクションを実行し、私が持っていますリクエストが終了するまで待つ。だから私はコールバックまたはこれのようなものが必要です。
私は単にdoRequest inclをスレッドする必要がありますか? waituntildone =はい?
ヘルパークラスのネットワーキングもスレッド化する必要がありますか?私はから返された値を処理できるように、それはそれのタスクを完了した後にdoRequestから呼び出し元のクラスにコールバックを取得するためのベストプラクティスは何
[NSThread detachNewThreadSelector:@selector(h doRequest) toTarget:self withObject:nil];
:それとも、このようなものの十分なスレッドのメソッドを呼び出すことですWebサービス?
ありがとうございます。
[self fooCompletion:^{
// do something after doRequest is done
}];
うまくいくようです:) ありがとう –