私はRESTful WebサービスとやりとりするiPhoneアプリを作成しています。後ですべてのリクエストで使用するために認証トークンをリクエストする必要があります。可能であればマルチスレッドを避け、代わりに非同期NSURLConnectionメソッドを使用して、メインスレッドがブロックしないようにして、ユーザーインターフェイスの応答性を確保してください。NSURLConnectionを使用して非同期リクエストをシリアルで処理する
私が遭遇している問題は、トークンを同期要求をフェッチしてメインスレッドをブロックせずに、トークンがフェッチされるのを待つようにする方法がわからないことです。
トークンフェッチが完了したときに設定されたセマフォ値をループに入れて投げることができたのは私には起こりましたが、それはやり方が間違っているようです。これを正しく行う方法はありますか?
これはそうするようですが、できるだけiOS 4.xとの互換性を保つことをお勧めします。標準のデリゲートコールでそれを行う方法はありませんか? – ceperry
はい、同じことを行うには、標準の代理コールを絶対に使用することができます。最初のconnectionDidFinishLoading:callの結果として/の中の後続のリクエストを起動するだけです。 –