2011-01-29 6 views
1

ユーザーがリロードボタンをタップするたびにウェブサイトからコンテンツを取得する必要のあるアプリケーションを作成しています。NSOperationから呼び出されたときにUITableViewがスリープします

もしそうなら、NSOperationが登録され、NSOperationQueueに置かれます。

NSOperationが開始(START QUEUE)されると、キャッシュをチェックし、サーバー(CALL IMPORT1)からデータをリロードします。
この操作を実行すると、データベースにクエリを行い(READ READING/END READING)、UITableViewに通知が送信され、[self.tableView reloadData];(RELOAD DATA START)
が呼び出されます。私は約1.000の要素をインポートする場合でも。

私のクレイジーを引き起こすのは、「END QUEUE」と最初のセル(CREATE CELL START)の取得の間に何らかの睡眠があるということです。この睡眠の後、細胞は非常に速くなるはずです。

この「スリープ」を呼び出す原因を特定できません。

誰でも私に何が間違っているかのヒントを教えてください。 54:34.460 [30488:207] START読み取り2011-01-29 15:54 予め

おかげでボリス

をviewDidAppear

2011-01-29 15と呼ばれます:34.461 [30488:207] END READING
2011-01-29 15:54:34.464 [30488:207] リロードデータの開始2011-01-29 15:54:34.468 [30488:207] GET SECTIONS 2011 -01-29 15:54:34.469 [30488:207] GET HEADER 2011-01-29 15:54:34.470 [30488:207] GET HEADER 2011-01-29 15:54:34.470 [30488:207] GET ROWS
2011-01-29 15:54: 34.471 [30488:207] CELL開始をCREATE 2011-01-29 15:54:34.473 [30488:207] 2011-01-29 15 CELL STOPをCREATE:54:34.474 [30488:207】細胞START
をCREATE 2011-01-29 15:54:34.475 [30488:207] CREATE CELL STOP 2011-01-29 15:54:34.476 [30488:207] CREATE CELL START 2011-01-29 15:54:34.477 [30488:207]セルストップを作成する
2011-01-29 15:54:34.477 [30488:207] GETヘッダ通知(太字の部分が原因NSOperation新しいある)

2011-01-29 15を介して呼び出さ

:54:04.719 [30488:630B]スタートQUEUE 2011 54:-01-29 15 05.727 [30488:630B] CALLが開始IMPORT1
2011-01-29 15:54:05.750 [30488:630B] CALLのIMPORT1停止2011-01-29 15:54:05.760 [30488:630b] CALL VIEW START
2011-01-2 9 15:54:05.767 [30488:630b] START READING
2011-01-29 15:54:05.771 [30488:630b] END READING 2011-01-29 15:54:05781 [30488:630B] RELOAD DATA START
2011-01-29 15:54:05.786 [30488:630B] GETセクション2011-01-29 15:54:05.791 [30488:630B] GET HEADER 2011- 01から29 15:54:05.797 [30488:630B] GET HEADER
2011-01-29 15:54:05.802 [30488:630B] GET行
2011-01-29 15:54:05.806 [ 30488:630b] CALL VIEW STOP 2011-01-29 15:54:05.811 [30488:630b] END QUEUE 2011-01-29 15:54:10.770 [30488:630b] CREATE CELL START 2011-01- 29 15:54:10.776 [30488:630b] CREATE CELL 停止20 11-01-29 15:54:10.777 [30488:630b] CREATE CELL START
2011-01-29 15:54:10.778 [30488:630b] CREATE CELL STOP 2011-01-29 15:54: 10.778 [30488:630B] CREATE CELL START 2011-01-29 15:54:10.780 [30488:630B] CREATE CELL停止
2011-01-29 15:54:10.781 [30488:630B] GETヘッダ

+0

解決策を見つけました... NSOperationがセカンダリスレッドのNSNotificationを私のUITableViewControllerに送信します - これにより遅延が発生します。私はこのサイトで解決策を見つけました:http://cocoawithlove.com/2009/08/safe-threaded-design-and-inter-thread.htmlこれは私の助けを誰かが願っています! – Boris

+0

解決策を見つけたら、回答として投稿してその回答を受け入れることができますか?そうすれば、この質問は「未回答」として表示されなくなります。 ありがとう! – makdad

答えて