アプリがハングせずにファイルのアップロードがハングアップするように見えるという奇妙な問題が発生しています。これはAFHTTPClient内のある種のデッドロックであると思いますが、それは私のホスティングプロバイダー(ラックスペースクラウドサイト)である可能性があります。ここにいくつかのヒントがあります。これはまれですが、一度に複数の接続が開いている場合に最も発生するようです。
- WIFIとセルデータネットワークで発生します
- 100%表示されているアップロード進捗ブロックを利用しています
- ネットワークアクティビティスピナーが回転しています
- アプリを永久にそのままにしておくことができます。アプリが応答するファイルのアップロードで「キャンセル」を押すと、アップロードが正常にキャンセルされ、完了ブロックが呼び出されるまで、何も起こらないようです。もう一度アップロードを押すと、ファイルに同じNSDataと新しい操作を使用してすぐに機能します。
- 他の接続は、アップロードが100%停止している間に開始/完了します
- サーバーログには、ハング時間中に接続を受信した兆候は見られません。重複したアップロードはありません。
- アップロードはバックグラウンドスレッドから開始されますが、それが私のコードの問題である場合、アップロードはこれほど遠くまでは到達しないと思います。スレッドの最後のコード行は、新しく作成したアップロード操作をAFHTTPClientキューに追加する行です。
何か案は?