我有一些運行速度非常慢的代碼。我把這個問題縮小到了以下幾行。如果註釋掉,代碼會很快運行。如果存在,該過程可能需要30秒或更長時間,儘管編譯器或運行時沒有報告錯誤。IOS/Objective-C:測試日期爲null很慢
我有如下的臨時對象日期:
NSDate *lastedited = importObject.lastedited;
如果我登錄這個控制檯作爲日誌:
2015-10-08 08:44:51 +0000
以上不會導致延遲
當我然後去保存它在Core Data
,我首先檢查它是否爲空。但是,下面的代碼是什麼原因導致極端延遲:
if (lastedited != (id)[NSNull null]){
[record setValue:lastedited forKey:@"lastedited"];
}
編輯:
我發現,即使考慮了試驗,線路運行[record setValue:lastedited forKey:@"lastedited"]
極爲緩慢。
儘管實體中的lastedited
是數據模型中的NSDate。
而且在頂部行顯示它是一個NSDate和日誌的形式向控制檯2015-10-08 08:44:51 +0000
誰能幫我找出是什麼原因造成的代碼,因此運行緩慢?
謝謝。
核心數據實體中的嵌套字段的數據類型是什麼?它是NSDate還是NSTimeInterval? – Arun
NSDate在覈心數據文件的.h文件中以及在Model.scdatamodeld – user6631314
中查看* slow * *有多慢? – vikingosegundo