斯威夫特2语法错误
问题描述:
所以,它告诉我:斯威夫特2语法错误
init()
在IOS 9.0已被否决:使用 -initWithConcurrencyType
: 代替
var managedObjectContext = NSManagedObjectContext()
这是我的代码。它也给了错误,所以我应该如何改变它?
答
由于iOS的9 NSManagedObjectContext()
已被弃用,建议创建与NSManagedObjectContext
,作为暗示,-initWithConcurrencyType:
代替。
用法在创建iOS中9 NSManagedObjectContext
时:
let managedObjectContext = NSManagedObjectContext(concurrencyType: .MainQueueConcurrencyType)
随着-initWithConcurrencyType:
,我们需要指定一个并发类型。
上面示例创建一个带有.MainQueueConcurrencyType
,这是三个一个可以指定一个:
case ConfinementConcurrencyType
指定上下文将使用线程限制图案。
case PrivateQueueConcurrencyType
指定范围内将与私人调度队列关联。
case MainQueueConcurrencyType
指定上下文将与主队列有关。
由于不推荐使用NSManagedObjectContext()
,如果我的记忆功能正常,则默认设置为.ConfinementConcurrencyQueue
。
如果您要处理UI元素(即更新textLabel
),请使用.MainQueueConcurrencyQueue
。