我正在使用Xcode和iPhone X设备评测我的应用程序(使用Codename One构建(。我注意到,在繁重的计算(单线程或多线程(中,sigprocmask
和__sigaltstack
(来自libsystem_kernel.dylib
(是最大的时间消耗者,每个都超过20%。这是一笔巨大的开销。有人知道这是从哪里来的吗?是否有办法减少开销?
不是这些方面的专家,但据我所知,它们是低级内核调用。我认为这两者都是探查器开销,所以如果您在没有探查器的情况下运行,它们就不会成为列表的顶部。
再说一遍,不是专家,但这是有道理的。探查器需要定期查找有关当前方法和堆栈的信息。