首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CoreSpotlight默认索引线程安全

CoreSpotlight默认索引线程安全
EN

Stack Overflow用户
提问于 2016-07-25 13:10:07
回答 1查看 374关注 0票数 0

文档提到:https://developer.apple.com/reference/corespotlight/cssearchableindex?language=objc

在批处理模式中,客户端负责保护私有CSSearchableIndex实例不受多个线程的并发访问;对索引实例的并发调用具有未定义的结果。

但是它没有提到在非批处理模式下会发生什么。因此,假设我使用默认的可搜索索引,索引需要花费大量的时间(1-2秒)。我打电话

代码语言:javascript
复制
indexSearchableItems:completionHandler:

当这个索引还在进行的时候,我能打电话给

代码语言:javascript
复制
indexSearchableItems:completionHandler:

再次?还是应该自己保护默认的可搜索索引实例不受并发访问的影响?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-07-26 09:35:02

根据文档,如果我们创建了一个私有的CSSearchableIndex,那么我们就有责任保护它不受多线程访问的影响。默认的CSSearchableIndex是线程安全的.我一直在使用来自多个后台线程的indexSearchableItems:completionHandler:在defaultSearchableIndex上,并且从未遇到过争用条件或崩溃。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38568701

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档