【发布时间】:2023-04-09 05:30:01
【问题描述】:
我创建了一个小型测试应用程序。它创建了一家新公司和若干 x 员工。
员工是在他们自己的线程中创建的,一旦完成,他们就会被添加到公司中。
因为不允许线程之间共享托管对象,所以我使用公司的对象id。
为了不同时读/写同一个托管对象上下文,我为每个线程创建了一个临时上下文。我使用 - (void)mergeChanges:(NSNotification *)Notifikation 并合并 man 上下文和线程上下文之间的更改。
我使用两个应用控制器和绑定在两个表格视图中显示公司及其员工。
但仍有一个我无法修复的错误。每次我创建一个有员工的新公司时,并不是所有员工都出现在表格视图中。不知怎的,他们迷路了,但我不知道在哪里。
我已经在这里上传了 Xcode 项目:http://uploading.com/files/7894m9mc/CoreDataMultiThreading.zip/
我现在正在努力寻找一个星期的错误:(也许其他人有更多的运气。
注意:我想用该应用程序尝试在他们自己的线程(员工)中创建许多对象,并在创建后立即将这些对象添加到同一个对象(公司)中。
(请原谅我发音不好)
【问题讨论】:
-
您提供的 url 中的 zip 文件已损坏,无法解压。
-
没关系,文件托管服务很奇怪,让你等待。
标签: multithreading cocoa core-data cocoa-bindings