2015-02-23 108 views
2

由於我無法解決的原因,這只是開始出現藍色。在啓動我的iOS應用程序,該應用程序將暫停與以下方法斷點:解析checkIfCommandIsRunning暫停應用程序

[PFQuery checkIfCommandIsRunning] 

我相信這是一個私人解析方法。如果我關閉斷點,這不是一個問題,但這裏顯然有些奇怪。我有一個斷點來觸發所有異常。在這種情況下,這是暫停應用程序的原因。

任何線索?我真的不知道這與什麼有關。任何幫助非常感謝,謝謝。

編輯:

這裏是在我的代碼的方法,其斷點停止在。這在線程隊列中的checkIfCommandIsRunning之前的3個方法中列出。

//get objects we want to delete 
    [deleteQuery findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) 
    { 
     if (!error) 
     { 
      //create array of ids from delete list 
      NSMutableArray *deletedObjectIds = [NSMutableArray new]; 
      for (PFObject *obj in objects) [deletedObjectIds addObject:obj.objectId]; 

      //update main query to not include these objects 
      [_query whereKey:@"objectId" notContainedIn:deletedObjectIds]; 
     } 
    }]; 

我在這段代碼中做了什麼很簡單。我有一個PFQuery,它提取了我標記爲要刪除的特定pinName的所有對象。它停止的確切行是:

[_query whereKey:@"objectId" notContainedIn:deletedObjectIds];

任何更多的線索?

+0

你爲什麼打電話給它? – danh 2015-02-23 16:45:42

+0

我不是,但這是斷點停止的方法。正如我所提到的,我認爲它是一種私人的解析方法,所以它很難解釋它的任何含義。 – 2015-02-23 16:47:32

+0

當問題發生時,你可以發佈我們在執行代碼的位置嗎?具體來說,到目前爲止,已經做出了什麼呼籲來解析sdk。 – danh 2015-02-23 17:36:34

回答

0

你是對的PFQuery.checkIfCommandIsRunning是一種私人方法,可以確保PFQuery不是在PFObject上執行多次。

它拋出的錯誤是:

此查詢有一個優秀的網絡連接。您必須等待 ,直到完成。

確保你不被任何

  • 調用查詢不止一次同時添加Bool變量isQueryExecuting作爲條件來執行查詢,並將其設置爲true當您啓動查詢,到查詢完成時爲false
  • 在串行隊列中執行查詢以確保僅在所有先前的查詢完成後才執行查詢(FIFO)。考慮性能影響。