我突然收到SIGABRT
中的dispatch_once
,如下面的Xcode所示。
最近未添加使用dispatch_once
此问题仅发生在iOS模拟器中,使用我们专门用于模拟器的目标。
dispatch_once(predicate, block);
#if DISPATCH_ONCE_INLINE_FASTPATH
DISPATCH_INLINE DISPATCH_ALWAYS_INLINE DISPATCH_NONNULL_ALL DISPATCH_NOTHROW
DISPATCH_SWIFT3_UNAVAILABLE("Use lazily initialized globals instead")
void
_dispatch_once(dispatch_once_t *predicate,
DISPATCH_NOESCAPE dispatch_block_t block)
{
if (DISPATCH_EXPECT(*predicate, ~0l) != ~0l) {
dispatch_once(predicate, block);
} else {
dispatch_compiler_barrier();
}
DISPATCH_COMPILER_CAN_ASSUME(*predicate == ~0l);
}
#undef dispatch_once
#define dispatch_once _dispatch_once
#endif
#endif // DISPATCH_ONCE_INLINE_FASTPATH
答案 0 :(得分:1)
就我而言,它是由{strong> Key here}使用 KeychainItemWrapper 引起的,但未通过日志或异常跟踪确认。我放弃了那个旧的类,并用现代的解决方案 SAMKeychain 代替了它。
答案 1 :(得分:0)
将Storyboard和Class文件添加到项目中时会发生此问题,并自动添加到主Target,但 not 已添加到辅助Target的目标成员身份。
由于没有对该类的实际引用,编译器未捕获该问题。相反,使用对Storyboard名称的字符串类型引用来构造视图:
[UIStoryboard storyboardWithName:@"storyboardFileThatWasNotAddedToThisTarget" bundle:nil];
通过将新文件添加到辅助目标来修复:
通过向Xcode调试器添加异常断点找到问题。
答案 2 :(得分:0)
我使用的是Realm
,当我更新Xcode
却未更新pod时,崩溃发生了。确保使用以下方法更新您的广告连播
pod repo update
pod update
如果您遇到权限问题,请运行sudo
。
在领域网站上,
领域模型属性必须具有@objc动态var属性才能 成为基础数据库数据的访问者。请注意,如果 该类声明为@objcMembers(Swift 4或更高版本),单个 属性只能声明为动态变量。