เมื่อฉันอัพเดต NSManagedObject และบันทึก ฉันได้รับข้อผิดพลาด: ไม่สามารถดำเนินการให้เสร็จสิ้นได้ (ข้อผิดพลาดโกโก้ 1560)
- วัตถุอยู่ในฐานข้อมูลแล้ว ดังนั้นอันที่จริงฉันกำลังอัปเดตเมื่อทำการบันทึก
- เมื่อฉันบันทึกวัตถุก่อนที่จะแก้ไขไม่มีข้อผิดพลาด
- ฉันแก้ไขมันโดยการตั้งค่าคุณสมบัติของวัตถุ การใช้ KVP ก็มีผลลัพธ์เช่นเดียวกัน
- บันทึกดั้งเดิม (วัตถุถูกสร้างขึ้นไม่นานก่อนหน้านี้) และบันทึกหลังจากการอัพเดตเสร็จสิ้นทั้งหมดในเธรดหลัก วัตถุจะไม่ถูกสัมผัสจากเธรดอื่น
วิธีการ validateForUpdate: ส่งคืน NO เสมอ ฉันไม่แน่ใจว่าวิธีนี้ควรส่งคืน YES แม้ว่าวัตถุจะไม่มีการเปลี่ยนแปลงหรือไม่: หากวัตถุ X ถูกบันทึกโดยไม่มีข้อผิดพลาด จากนั้นฉันจะเรียก validateForUpdate: มันจะส่งคืน NO
มีความคิดอะไรบ้าง?