下面是我的函數,其中突出顯示了可以工作的代碼(即異步),但我想要的是與PFQuery.countObjects(error: NSErrorPointer)
一起工作的同步代碼。語法使用來自解析的countObjects(同步)的問題
//Count how many violations User has.
func checkViolationStatus(usr: PFUser) -> Int32 {
var violations: Int32 = 0
var query = PFQuery(className: PF_BLOCKEDUSERS_CLASS_NAME)
query.includeKey(PF_BLOCKEDUSERS_USER)
query.whereKey(PF_BLOCKEDUSERS_USER, equalTo: usr)
//THIS WORKS BUT IS ASYNCHRONOUS AND I WANT IT TO BE SYNCHRONOUS
// query.countObjectsInBackgroundWithBlock {
// (count: Int32, error: NSError?) -> Void in
// if error == nil {
// print("Sean has played \(count) games")
// violations = count
// }
// }
//WANT TO MAKE IT SYNCHRONOUS -- THIS DOES NOT WORK
violations = query.countObjects(<#T##error: NSErrorPointer##NSErrorPointer#>)
return violations
}
如何正確使用query.countObjects(...)
?
你想讓它同步的設計理由是什麼?如果有很多對象,並且它連接主線程,那麼它顯然會導致性能不佳。 – pbush25
這是一個屏幕,這是要顯示的關鍵信息。我猜想我能得到的其中一個錯誤是超時。另外一般來說,我在如何從Parse進行同步讀取時遇到問題,所以想更好地理解正確的語法。 – user1406716
@ user1406716您收到的錯誤是什麼? – Daniel