UIWebView WebCore TimerBase仅在11.3(15E216)上崩溃:SIGTRAP WebCore _ZN7WebCore9TimerBaseD2Ev

我最近收到了Crash Report Tools的崩溃报告。 这个崩溃是指UIWebView WebCore崩溃,我的应用程序只使用UIWebView,而我最近无法切换到WKWebview。 下面是崩溃报告,我无法重现它。 它发生在iPhone 6,7,8,X设备上,但只使用iOS 11.3版本(15E216)。

这次崩溃有3个不同的崩溃堆栈。 任何意见将是有益的。

类型1:

0 WebCore WebCore::TimerBase::~TimerBase() + 120 1 WebCore WebCore::TimerBase::~TimerBase() + 40 2 WebCore WebCore::ImageLoader::~ImageLoader() + 2076 3 WebCore WebCore::HTMLImageElement::~HTMLImageElement() + 224 4 WebCore WebCore::HTMLImageElement::~HTMLImageElement() + 12 5 JavaScriptCore void JSC::MarkedBlock::Handle::specializedSweep(JSC::FreeList*, JSC::MarkedBlock::Handle::EmptyMode, JSC::MarkedBlock::Handle::SweepMode, JSC::MarkedBlock::Handle::SweepDestructionMode, JSC::MarkedBlock::Handle::ScribbleMode, JSC::MarkedBlock::Handle::NewlyAllocatedMode, JSC::MarkedBlock::Handle::MarksMode, JSC::JSDestructibleObjectDestroyFunc const&) + 212 

第2类:

 0 WebCore WebCore::TimerBase::~TimerBase() + 120 1 WebCore WebCore::TimerBase::~TimerBase() + 40 2 WebCore WebCore::XMLHttpRequest::~XMLHttpRequest() + 116 3 WebCore WebCore::XMLHttpRequest::~XMLHttpRequest() + 12 4 JavaScriptCore void JSC::MarkedBlock::Handle::specializedSweep(JSC::FreeList*, JSC::MarkedBlock::Handle::EmptyMode, JSC::MarkedBlock::Handle::SweepMode, JSC::MarkedBlock::Handle::SweepDestructionMode, JSC::MarkedBlock::Handle::ScribbleMode, JSC::MarkedBlock::Handle::NewlyAllocatedMode, JSC::MarkedBlock::Handle::MarksMode, JSC::JSDestructibleObjectDestroyFunc const&) + 212 5 JavaScriptCore void JSC::MarkedBlock::Handle::finishSweepKnowingHeapCellType(JSC::FreeList*, JSC::JSDestructibleObjectDestroyFunc const&)::'lambda'()::operator()() const + 408 

类型3:

 0 WebCore WebCore::TimerBase::~TimerBase() + 120 1 WebCore WebCore::TimerBase::~TimerBase() + 40 2 WebCore WebCore::MediaElementSession::~MediaElementSession() + 96 3 WebCore WebCore::HTMLMediaElement::~HTMLMediaElement() + 1340 4 WebCore WebCore::HTMLVideoElement::~HTMLVideoElement() + 176 5 JavaScriptCore void JSC::MarkedBlock::Handle::specializedSweep(JSC::FreeList*, JSC::MarkedBlock::Handle::EmptyMode, JSC::MarkedBlock::Handle::SweepMode, JSC::MarkedBlock::Handle::SweepDestructionMode, JSC::MarkedBlock::Handle::ScribbleMode, JSC::MarkedBlock::Handle::NewlyAllocatedMode, JSC::MarkedBlock::Handle::MarksMode, JSC::JSDestructibleObjectDestroyFunc const&) + 212 

==

完全崩溃堆栈:

类型1:

 #0 Thread SIGTRAP 0 WebCore WebCore::TimerBase::~TimerBase() + 120 1 WebCore WebCore::TimerBase::~TimerBase() + 40 2 WebCore WebCore::ImageLoader::~ImageLoader() + 2076 3 WebCore WebCore::HTMLImageElement::~HTMLImageElement() + 224 4 WebCore WebCore::HTMLImageElement::~HTMLImageElement() + 12 5 JavaScriptCore void JSC::MarkedBlock::Handle::specializedSweep(JSC::FreeList*, JSC::MarkedBlock::Handle::EmptyMode, JSC::MarkedBlock::Handle::SweepMode, JSC::MarkedBlock::Handle::SweepDestructionMode, JSC::MarkedBlock::Handle::ScribbleMode, JSC::MarkedBlock::Handle::NewlyAllocatedMode, JSC::MarkedBlock::Handle::MarksMode, JSC::JSDestructibleObjectDestroyFunc const&) + 212 6 JavaScriptCore void JSC::MarkedBlock::Handle::finishSweepKnowingHeapCellType(JSC::FreeList*, JSC::JSDestructibleObjectDestroyFunc const&)::'lambda'()::operator()() const + 408 7 JavaScriptCore void JSC::MarkedBlock::Handle::finishSweepKnowingHeapCellType(JSC::FreeList*, JSC::JSDestructibleObjectDestroyFunc const&) + 320 8 JavaScriptCore JSC::JSDestructibleObjectHeapCellType::finishSweep(JSC::MarkedBlock::Handle&, JSC::FreeList*) + 32 9 JavaScriptCore JSC::MarkedBlock::Handle::sweep(JSC::FreeList*) + 372 10 JavaScriptCore JSC::LocalAllocator::tryAllocateIn(JSC::MarkedBlock::Handle*) + 40 11 JavaScriptCore JSC::LocalAllocator::tryAllocateWithoutCollecting() + 48 12 JavaScriptCore JSC::LocalAllocator::allocateSlowCase(JSC::GCDeferralContext*, JSC::AllocationFailureMode) + 292 13 JavaScriptCore JSC::CompleteSubspace::allocateNonVirtual(JSC::VM&, unsigned long, JSC::GCDeferralContext*, JSC::AllocationFailureMode) + 216 14 WebCore std::__1::enable_if<std::is_same::value, WebCore::JSDOMWrapperConverterTraits::WrapperClass*>::type WebCore::createWrapper(WebCore::JSDOMGlobalObject*, ***::Ref<WebCore::GainNode, ***::DumbPtrTraits >&&) + 220 15 WebCore WebCore::toJS(JSC::ExecState*, WebCore::JSDOMGlobalObject*, WebCore::GainNode&) + 136 16 WebCore WebCore::jsAudioContextPrototypeFunctionCreateGain(JSC::ExecState*) + 264 17 JavaScriptCore _llint_entry + 31860 18 JavaScriptCore _llint_entry + 29020 19 JavaScriptCore _llint_entry + 30040 20 JavaScriptCore _llint_entry + 29020 21 JavaScriptCore _llint_entry + 29020 22 JavaScriptCore _llint_entry + 29020 23 JavaScriptCore _llint_entry + 29020 24 JavaScriptCore _llint_entry + 29020 25 JavaScriptCore _llint_entry + 29020 26 JavaScriptCore _llint_entry + 29020 27 JavaScriptCore _llint_entry + 29020 28 JavaScriptCore _llint_entry + 29020 29 JavaScriptCore _llint_entry + 29020 30 JavaScriptCore _llint_entry + 29020 31 JavaScriptCore _llint_entry + 29020 32 JavaScriptCore _llint_entry + 29020 33 JavaScriptCore _llint_entry + 29020 34 JavaScriptCore _llint_entry + 29020 35 JavaScriptCore _llint_entry + 29020 36 JavaScriptCore _vmEntryToJavaScript + 272 37 JavaScriptCore JSC::JITCode::execute(JSC::VM*, JSC::ProtoCallFrame*) + 184 38 JavaScriptCore JSC::Interpreter::executeCall(JSC::ExecState*, JSC::JSObject*, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&) + 464 39 JavaScriptCore JSC::profiledCall(JSC::ExecState*, JSC::ProfilingReason, JSC::JSValue, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&, ***::NakedPtr&) + 180 40 WebCore WebCore::JSEventListener::handleEvent(WebCore::ScriptExecutionContext&, WebCore::Event&) + 1176 41 WebCore WebCore::EventTarget::fireEventListeners(WebCore::Event&, ***::Vector<***::RefPtr<WebCore::RegisteredEventListener, ***::DumbPtrTraits >, 1ul, ***::CrashOnOverflow, 16ul, ***::FastMalloc>) + 760 42 WebCore WebCore::EventTarget::fireEventListeners(WebCore::Event&) + 596 43 WebCore WebCore::EventTarget::dispatchEvent(WebCore::Event&) + 116 44 WebCore WebCore::WebSocket::didReceiveBinaryData(***::Vector&&) + 236 45 WebCore WebCore::WebSocketChannel::processFrame() + 2912 46 WebCore WebCore::WebSocketChannel::processBuffer() + 112 47 WebCore WebCore::WebSocketChannel::didReceiveSocketStreamData(WebCore::SocketStreamHandle&, char const*, unsigned long) + 112 48 WebCore WebCore::SocketStreamHandleImpl::readStreamCallback(unsigned long) + 544 49 CoreFoundation __signalEventSync + 212 50 CoreFoundation __cfstream_solo_signalEventSync + 260 51 CoreFoundation __CFStreamSignalEvent + 548 52 CFNetwork SocketStream::dispatchSignalFromSocketCallbackUnlocked(SocketStreamSignalHolder*) + 64 53 CFNetwork SocketStream::socketCallback(__CFSocket*, unsigned long, __CFData const*, void const*) + 148 54 CFNetwork SocketStream::_SocketCallBack_stream(__CFSocket*, unsigned long, __CFData const*, void const*, void*) + 88 55 CoreFoundation ___CFSocketPerformV0 + 1352 56 CoreFoundation ___CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 24 57 CoreFoundation ___CFRunLoopDoSources0 + 276 58 CoreFoundation ___CFRunLoopRun + 1204 59 CoreFoundation CFRunLoopRunSpecific + 552 60 GraphicsServices GSEventRunModal + 100 61 UIKit UIApplicationMain + 236 62 x5gamehelper main + 88 63 libdyld.dylib _start + 4 

第2类:

 #0 Thread SIGTRAP 0 WebCore WebCore::TimerBase::~TimerBase() + 120 1 WebCore WebCore::TimerBase::~TimerBase() + 40 2 WebCore WebCore::XMLHttpRequest::~XMLHttpRequest() + 116 3 WebCore WebCore::XMLHttpRequest::~XMLHttpRequest() + 12 4 JavaScriptCore void JSC::MarkedBlock::Handle::specializedSweep(JSC::FreeList*, JSC::MarkedBlock::Handle::EmptyMode, JSC::MarkedBlock::Handle::SweepMode, JSC::MarkedBlock::Handle::SweepDestructionMode, JSC::MarkedBlock::Handle::ScribbleMode, JSC::MarkedBlock::Handle::NewlyAllocatedMode, JSC::MarkedBlock::Handle::MarksMode, JSC::JSDestructibleObjectDestroyFunc const&) + 212 5 JavaScriptCore void JSC::MarkedBlock::Handle::finishSweepKnowingHeapCellType(JSC::FreeList*, JSC::JSDestructibleObjectDestroyFunc const&)::'lambda'()::operator()() const + 408 6 JavaScriptCore void JSC::MarkedBlock::Handle::finishSweepKnowingHeapCellType(JSC::FreeList*, JSC::JSDestructibleObjectDestroyFunc const&) + 320 7 JavaScriptCore JSC::JSDestructibleObjectHeapCellType::finishSweep(JSC::MarkedBlock::Handle&, JSC::FreeList*) + 32 8 JavaScriptCore JSC::MarkedBlock::Handle::sweep(JSC::FreeList*) + 372 9 JavaScriptCore JSC::LocalAllocator::tryAllocateIn(JSC::MarkedBlock::Handle*) + 40 10 JavaScriptCore JSC::LocalAllocator::tryAllocateWithoutCollecting() + 48 11 JavaScriptCore JSC::LocalAllocator::allocateSlowCase(JSC::GCDeferralContext*, JSC::AllocationFailureMode) + 292 12 JavaScriptCore JSC::CompleteSubspace::allocateNonVirtual(JSC::VM&, unsigned long, JSC::GCDeferralContext*, JSC::AllocationFailureMode) + 216 13 WebCore std::__1::enable_if<std::is_same::value, WebCore::JSDOMWrapperConverterTraits::WrapperClass*>::type WebCore::createWrapper(WebCore::JSDOMGlobalObject*, ***::Ref<WebCore::GainNode, ***::DumbPtrTraits >&&) + 220 14 WebCore WebCore::toJS(JSC::ExecState*, WebCore::JSDOMGlobalObject*, WebCore::GainNode&) + 136 15 WebCore WebCore::jsAudioContextPrototypeFunctionCreateGain(JSC::ExecState*) + 264 16 JavaScriptCore _llint_entry + 31860 17 JavaScriptCore _llint_entry + 29020 18 JavaScriptCore _llint_entry + 30040 19 JavaScriptCore _llint_entry + 29020 20 JavaScriptCore _llint_entry + 29020 21 JavaScriptCore _llint_entry + 29020 22 JavaScriptCore _llint_entry + 29020 23 JavaScriptCore _llint_entry + 29020 24 JavaScriptCore _llint_entry + 29020 25 JavaScriptCore _llint_entry + 29020 26 JavaScriptCore _llint_entry + 29020 27 JavaScriptCore _llint_entry + 29020 28 JavaScriptCore _llint_entry + 29020 29 JavaScriptCore _llint_entry + 28904 30 JavaScriptCore _llint_entry + 28904 31 JavaScriptCore _llint_entry + 28904 32 JavaScriptCore _llint_entry + 29020 33 JavaScriptCore _llint_entry + 29020 34 JavaScriptCore _llint_entry + 28904 35 JavaScriptCore _llint_entry + 29020 36 JavaScriptCore _llint_entry + 29020 37 JavaScriptCore _vmEntryToJavaScript + 272 38 JavaScriptCore JSC::JITCode::execute(JSC::VM*, JSC::ProtoCallFrame*) + 184 39 JavaScriptCore JSC::Interpreter::executeCall(JSC::ExecState*, JSC::JSObject*, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&) + 464 40 JavaScriptCore JSC::profiledCall(JSC::ExecState*, JSC::ProfilingReason, JSC::JSValue, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&, ***::NakedPtr&) + 180 41 WebCore WebCore::JSEventListener::handleEvent(WebCore::ScriptExecutionContext&, WebCore::Event&) + 1176 42 WebCore WebCore::EventTarget::fireEventListeners(WebCore::Event&, ***::Vector<***::RefPtr<WebCore::RegisteredEventListener, ***::DumbPtrTraits >, 1ul, ***::CrashOnOverflow, 16ul, ***::FastMalloc>) + 760 43 WebCore WebCore::EventTarget::fireEventListeners(WebCore::Event&) + 596 44 WebCore WebCore::EventTarget::dispatchEvent(WebCore::Event&) + 116 45 WebCore WebCore::WebSocket::didReceiveBinaryData(***::Vector&&) + 236 46 WebCore WebCore::WebSocketChannel::processFrame() + 2912 47 WebCore WebCore::WebSocketChannel::processBuffer() + 112 48 WebCore WebCore::WebSocketChannel::didReceiveSocketStreamData(WebCore::SocketStreamHandle&, char const*, unsigned long) + 112 49 WebCore WebCore::SocketStreamHandleImpl::readStreamCallback(unsigned long) + 544 50 CoreFoundation __signalEventSync + 212 51 CoreFoundation __cfstream_solo_signalEventSync + 260 52 CoreFoundation __CFStreamSignalEvent + 548 53 CFNetwork SocketStream::dispatchSignalFromSocketCallbackUnlocked(SocketStreamSignalHolder*) + 64 54 CFNetwork SocketStream::socketCallback(__CFSocket*, unsigned long, __CFData const*, void const*) + 148 55 CFNetwork SocketStream::_SocketCallBack_stream(__CFSocket*, unsigned long, __CFData const*, void const*, void*) + 88 56 CoreFoundation ___CFSocketPerformV0 + 1352 57 CoreFoundation ___CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 24 58 CoreFoundation ___CFRunLoopDoSources0 + 276 59 CoreFoundation ___CFRunLoopRun + 1204 60 CoreFoundation CFRunLoopRunSpecific + 552 61 GraphicsServices GSEventRunModal + 100 62 UIKit UIApplicationMain + 236 63 x5gamehelper main + 88 64 libdyld.dylib _start + 4 

类型3:

 #0 Thread SIGTRAP 0 WebCore WebCore::TimerBase::~TimerBase() + 120 1 WebCore WebCore::TimerBase::~TimerBase() + 40 2 WebCore WebCore::MediaElementSession::~MediaElementSession() + 96 3 WebCore WebCore::HTMLMediaElement::~HTMLMediaElement() + 1340 4 WebCore WebCore::HTMLVideoElement::~HTMLVideoElement() + 176 5 JavaScriptCore void JSC::MarkedBlock::Handle::specializedSweep(JSC::FreeList*, JSC::MarkedBlock::Handle::EmptyMode, JSC::MarkedBlock::Handle::SweepMode, JSC::MarkedBlock::Handle::SweepDestructionMode, JSC::MarkedBlock::Handle::ScribbleMode, JSC::MarkedBlock::Handle::NewlyAllocatedMode, JSC::MarkedBlock::Handle::MarksMode, JSC::JSDestructibleObjectDestroyFunc const&) + 212 6 JavaScriptCore void JSC::MarkedBlock::Handle::finishSweepKnowingHeapCellType(JSC::FreeList*, JSC::JSDestructibleObjectDestroyFunc const&)::'lambda'()::operator()() const + 408 7 JavaScriptCore void JSC::MarkedBlock::Handle::finishSweepKnowingHeapCellType(JSC::FreeList*, JSC::JSDestructibleObjectDestroyFunc const&) + 320 8 JavaScriptCore JSC::JSDestructibleObjectHeapCellType::finishSweep(JSC::MarkedBlock::Handle&, JSC::FreeList*) + 32 9 JavaScriptCore JSC::MarkedBlock::Handle::sweep(JSC::FreeList*) + 372 10 JavaScriptCore JSC::LocalAllocator::tryAllocateIn(JSC::MarkedBlock::Handle*) + 40 11 JavaScriptCore JSC::LocalAllocator::tryAllocateWithoutCollecting() + 48 12 JavaScriptCore JSC::LocalAllocator::allocateSlowCase(JSC::GCDeferralContext*, JSC::AllocationFailureMode) + 292 13 JavaScriptCore JSC::CompleteSubspace::allocateNonVirtual(JSC::VM&, unsigned long, JSC::GCDeferralContext*, JSC::AllocationFailureMode) + 216 14 WebCore std::__1::enable_if<std::is_same::value, WebCore::JSDOMWrapperConverterTraits::WrapperClass*>::type WebCore::createWrapper(WebCore::JSDOMGlobalObject*, ***::Ref<WebCore::WebSocket, ***::DumbPtrTraits >&&) + 220 15 WebCore WebCore::constructJSWebSocket1(JSC::ExecState*) + 284 16 WebCore WebCore::JSDOMConstructor::construct(JSC::ExecState*) + 136 17 JavaScriptCore JSC::LLInt::setUpCall(JSC::ExecState*, JSC::Instruction*, JSC::CodeSpecializationKind, JSC::JSValue, JSC::LLIntCallLinkInfo*) + 580 18 JavaScriptCore _llint_entry + 30024 19 JavaScriptCore _llint_entry + 28904 20 JavaScriptCore _llint_entry + 28904 21 JavaScriptCore _llint_entry + 29020 22 JavaScriptCore _llint_entry + 28904 23 JavaScriptCore _llint_entry + 28904 24 JavaScriptCore _llint_entry + 29020 25 JavaScriptCore _llint_entry + 29020 26 JavaScriptCore _llint_entry + 29020 27 JavaScriptCore _llint_entry + 29020 28 JavaScriptCore _vmEntryToJavaScript + 272 29 JavaScriptCore JSC::JITCode::execute(JSC::VM*, JSC::ProtoCallFrame*) + 184 30 JavaScriptCore JSC::Interpreter::executeCall(JSC::ExecState*, JSC::JSObject*, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&) + 464 31 JavaScriptCore JSC::boundThisNoArgsFunctionCall(JSC::ExecState*) + 512 32 JavaScriptCore _llint_entry + 31860 33 JavaScriptCore _llint_entry + 29020 34 JavaScriptCore _vmEntryToJavaScript + 272 35 JavaScriptCore JSC::JITCode::execute(JSC::VM*, JSC::ProtoCallFrame*) + 184 36 JavaScriptCore JSC::Interpreter::executeCall(JSC::ExecState*, JSC::JSObject*, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&) + 464 37 JavaScriptCore JSC::boundThisNoArgsFunctionCall(JSC::ExecState*) + 512 38 JavaScriptCore _llint_entry + 31860 39 JavaScriptCore _llint_entry + 29020 40 JavaScriptCore _llint_entry + 29020 41 JavaScriptCore _llint_entry + 29020 42 JavaScriptCore _llint_entry + 28904 43 JavaScriptCore _llint_entry + 29020 44 JavaScriptCore _llint_entry + 28904 45 JavaScriptCore _llint_entry + 28904 46 JavaScriptCore _llint_entry + 28904 47 JavaScriptCore _vmEntryToJavaScript + 272 48 JavaScriptCore JSC::JITCode::execute(JSC::VM*, JSC::ProtoCallFrame*) + 184 49 JavaScriptCore JSC::Interpreter::executeCall(JSC::ExecState*, JSC::JSObject*, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&) + 464 50 JavaScriptCore JSC::profiledCall(JSC::ExecState*, JSC::ProfilingReason, JSC::JSValue, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&, ***::NakedPtr&) + 180 51 WebCore WebCore::JSEventListener::handleEvent(WebCore::ScriptExecutionContext&, WebCore::Event&) + 1176 52 WebCore WebCore::EventTarget::fireEventListeners(WebCore::Event&, ***::Vector<***::RefPtr<WebCore::RegisteredEventListener, ***::DumbPtrTraits >, 1ul, ***::CrashOnOverflow, 16ul, ***::FastMalloc>) + 760 53 WebCore WebCore::EventTarget::fireEventListeners(WebCore::Event&) + 596 54 WebCore WebCore::EventTarget::dispatchEvent(WebCore::Event&) + 116 55 WebCore WebCore::WebSocket::didReceiveBinaryData(***::Vector&&) + 236 56 WebCore WebCore::WebSocketChannel::processFrame() + 2912 57 WebCore WebCore::WebSocketChannel::processBuffer() + 112 58 WebCore WebCore::WebSocketChannel::didReceiveSocketStreamData(WebCore::SocketStreamHandle&, char const*, unsigned long) + 112 59 WebCore WebCore::SocketStreamHandleImpl::readStreamCallback(unsigned long) + 544 60 CoreFoundation __signalEventSync + 212 61 CoreFoundation __cfstream_solo_signalEventSync + 260 62 CoreFoundation __CFStreamSignalEvent + 548 63 CFNetwork SocketStream::dispatchSignalFromSocketCallbackUnlocked(SocketStreamSignalHolder*) + 64 64 CFNetwork SocketStream::socketCallback(__CFSocket*, unsigned long, __CFData const*, void const*) + 148 65 CFNetwork SocketStream::_SocketCallBack_stream(__CFSocket*, unsigned long, __CFData const*, void const*, void*) + 88 66 CoreFoundation ___CFSocketPerformV0 + 1352 67 CoreFoundation ___CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 24 68 CoreFoundation ___CFRunLoopDoSources0 + 276 69 CoreFoundation ___CFRunLoopRun + 1204 70 CoreFoundation CFRunLoopRunSpecific + 552 71 GraphicsServices GSEventRunModal + 100 72 UIKit UIApplicationMain + 236 73 x5gamehelper main + 88 74 libdyld.dylib _start + 4 

有谁能够帮助我 ? 🙂

由于JavaScriptCore我遇到了同样类型的问题。 浪费了3-4天的时间,最后得到了解决方案。

对于iOS 11.0,只需将JSC_useJIT环境禁用为false即可。 这对我有用。

我将此代码放在AppDelegate文件中的didFinishLaunchingWithOptions方法中:

  setenv("JSC_useJIT", "false", 0); 

我希望这将有所帮助。

从这里找到参考

您似乎已在WebKit中暴露了TimerBase的错误,如下所示: https ://bugs.webkit.org/show_bug.cgi?id = 182931

他们提到了一个修复,可能已经在最近发布的11.3.1中找到了。

如果你很好奇,你可以在这里看到修复 。