Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在[[NSCU GSWindowBuffer colorSpace]retain]调试macOS Sierra上的应用程序崩溃_Macos_Crash_Segmentation Fault_Webkit_Macos Sierra - Fatal编程技术网

如何在[[NSCU GSWindowBuffer colorSpace]retain]调试macOS Sierra上的应用程序崩溃

如何在[[NSCU GSWindowBuffer colorSpace]retain]调试macOS Sierra上的应用程序崩溃,macos,crash,segmentation-fault,webkit,macos-sierra,Macos,Crash,Segmentation Fault,Webkit,Macos Sierra,我通过Mac应用商店分发应用程序。随着macOS Sierra(10.12和10.12.1)的升级,我的许多用户看到应用程序在看似随机的时间崩溃 我自己还不能复制这个,但是它影响了很多用户。我怀疑是macOS Sierra的变化导致了这种情况,因为该应用程序在旧版本的macOS X上运行良好 当崩溃深入AppKit时,我如何进行调试 以下是我所知道的: 基于Mac OS X 10.11(Xcode 7.2)构建的基于文档的Mac应用程序 在10.11和之前工作正常,在10.12和10.12.1

我通过Mac应用商店分发应用程序。随着macOS Sierra(10.12和10.12.1)的升级,我的许多用户看到应用程序在看似随机的时间崩溃

我自己还不能复制这个,但是它影响了很多用户。我怀疑是macOS Sierra的变化导致了这种情况,因为该应用程序在旧版本的macOS X上运行良好

当崩溃深入AppKit时,我如何进行调试

以下是我所知道的:

  • 基于Mac OS X 10.11(Xcode 7.2)构建的基于文档的Mac应用程序
  • 在10.11和之前工作正常,在10.12和10.12.1随机发生碰撞
  • 它使用嵌入式WebView
  • 原因是每次:
    objc\u msgSend()选择器名称:retain
    at
    -[\u NSCGSWindowBuffer colorSpace]
  • 所有崩溃日志在其他线程的堆栈跟踪中显示对
    com.apple.JavaScriptCore
    的引用
  • 一些用户表示,当应用程序崩溃时,他们以全屏或分屏模式使用该应用程序
看看堆栈跟踪,这可能是WebKit中的一个问题,还是巧合,因为我的应用程序碰巧包含一个嵌入式WebView

我考虑在应用程序中添加更多日志语句,并为一些用户提供一个特殊的调试版本。是否有什么我可以记录或留意的东西来找出是什么导致了这一点

在这一点上,我感谢所有的建议

编辑:

另一个遇到同样问题的开发人员与我联系。如果你看到同样的问题,请让我知道,这样我们可以比较笔记,并希望找到一个模式

崩溃日志(节选):

崩溃线程:0调度队列:com.apple.main-Thread
异常类型:EXC\U坏访问(SIGSEGV)
异常代码:0x00002a955ae2bec0处的内核地址无效
例外说明:EXC_尸体通知
终止信号:分段故障:11
终止原因:命名空间信号,代码0xb
正在终止进程:exc处理程序[0]
0x2a955ae2bec0附近的VM区域:
JS JIT生成的代码000026d481e01000-000026d481e02000[4K]--/rwx SM=NUL
--> 
MALLOC_NANO 0000060000000000-0000060000240000[36.0M]rw-/rwx SM=PRV
特定于应用程序的信息:
objc_msgSend()选择器名称:retain
线程0崩溃::调度队列:com.apple.main-Thread
0 libobjc.A.dylib 0x00007fffa66d8b5d objc_msgSend+29
1 com.apple.AppKit 0x00007fff8fc86b71-[[u NSCGSWindowBuffer颜色空间]+33
2 com.apple.AppKit 0x00007fff8fc5b5ad\uuuu NSCGSWindowBackingStoreMark\uuuu block\u invoke+997
3 com.apple.AppKit 0x00007fff8fc1eba3 NSCGTransaction运行订单的预调试+289
4 com.apple.AppKit 0x00007fff8fc1ea6f NSCGTransaction运行预调试\u31
5 com.apple.AppKit 0x00007fff8fc1ea44\uuuu39+[\unscgstransaction currentTransaction]\ublock\uinvoke+34
6 com.apple.QuartzCore 0x00007fff979921ba CA::事务::运行提交处理程序(CATTransactionPhase)+46
7 com.apple.QuartzCore 0x00007fff97a9a12f CA::Context::commit_事务(CA::transaction*)+959
8 com.apple.QuartzCore 0x00007fff97990d55 CA::Transaction::commit()+475
9 com.apple.AppKit 0x00007fff8ff00c69\uuuu37+[NSDisplayCycle currentDisplayCycle]\uBlock\uInvoke.31+323
10 com.apple.CoreFoundation 0x00007fff91e75ec7\uuuu CFRUNLOOP\u正在调用\u OUT\u来调用\u观察者\u回调函数\uuuu+23
11 com.apple.CoreFoundation 0x00007fff91e75e37\uu cfrunloopdoobserver+391
12 com.apple.CoreFoundation 0x00007fff91e56d79 uu CFRunLoopRun+873
13 com.apple.CoreFoundation 0x00007fff91e567b4 CFRunLoopRunSpecific+420
14 com.apple.HIToolbox 0x00007fff913f2fbc RunCurrentEventLoopInMode+240
15 com.apple.HIToolbox 0x00007fff913f2cf9 ReceiveNextEventCommon+184
16 com.apple.HIToolbox 0x00007fff913f2c26 _blockuntinexteventmatchinglistinmodewithfilter+71
17 com.apple.AppKit 0x00007fff8fadcb79 _dpsnextent+1093
18 com.apple.AppKit 0x00007fff901f21c3-[NSApplication(NSEvent)\下一个VentMachingeVentMask:untilDate:inMode:dequeue:+1637
19 com.apple.AppKit 0x00007fff8fad153d-[n应用程序运行]+926
20 com.apple.AppKit 0x00007fff8fa9c1ad NSApplicationMain+1237
21 libdyld.dylib 0x00007fffa6fc3255启动+1
线程1:
0 libsystem_kernel.dylib 0x00007fffa70f1fde_uuusemwait_信号+10
1 libsystem_c.dylib 0x00007fffa7078b72纳米睡眠+199
2 libc++.1.dylib 0x00007fffa5ba865b std::uu 1::此线程::睡眠u for(std::uuu 1::chrono::duration const&)+80
3 com.apple.JavaScriptCore 0x00007fff94ccb3df void std::_1::this_thread::sleep_for(std:_1::chrono::duration const&+63
4 com.apple.JavaScriptCore 0x00007fff94cca3d1 bmalloc::waitUntilFalse(std::u 1::unique_lock&,std:u 1::chrono::duration,bool&)+113
5 com.apple.JavaScriptCore 0x00007fff94cca220 bmalloc::Heap::cleave(std:_1::unique_lock&,std:_1::chrono::duration)+48
6 com.apple.JavaScriptCore 0x00007fff94cca0b4 bmalloc::Heap::ConcurrentCleave()+68
7 com.apple.JavaScriptCore 0x00007fff94ccb621 bmalloc::AsyncTask::threadRunLoop()+97
8 com.apple.JavaScriptCore 0x00007fff94ccb529 bmalloc::AsyncTask::threadEntryPoint(bmalloc::AsyncTask*)+9
9 com.apple.JavaScriptCore 0x00007fff94ccb7dd void*std::_1::_thread_proxy(void*)+93
10 libsystem_pthread.dylib 0x00007fffa71daaab_pthread_body+180
11 libsystempthread.dyli
    Crashed Thread:        0  Dispatch queue: com.apple.main-thread

    Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
    Exception Codes:       KERN_INVALID_ADDRESS at 0x00002a955ae2bec0
    Exception Note:        EXC_CORPSE_NOTIFY

    Termination Signal:    Segmentation fault: 11
    Termination Reason:    Namespace SIGNAL, Code 0xb
    Terminating Process:   exc handler [0]

    VM Regions Near 0x2a955ae2bec0:
        JS JIT generated code  000026d481e01000-000026d481e02000 [    4K] ---/rwx SM=NUL  
    --> 
        MALLOC_NANO            0000600000000000-0000600002400000 [ 36.0M] rw-/rwx SM=PRV  

    Application Specific Information:
    objc_msgSend() selector name: retain


    Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
    0   libobjc.A.dylib                 0x00007fffa66d8b5d objc_msgSend + 29
    1   com.apple.AppKit                0x00007fff8fc86b71 -[_NSCGSWindowBuffer colorSpace] + 33
    2   com.apple.AppKit                0x00007fff8fc5b5ad __NSCGSWindowBackingStoreMark__block_invoke + 997
    3   com.apple.AppKit                0x00007fff8fc1eba3 NSCGSTransactionRunPreCommitActionsForOrder_ + 289
    4   com.apple.AppKit                0x00007fff8fc1ea6f NSCGSTransactionRunPreCommitActions_ + 31
    5   com.apple.AppKit                0x00007fff8fc1ea44 __39+[_NSCGSTransaction currentTransaction]_block_invoke + 34
    6   com.apple.QuartzCore            0x00007fff979921ba CA::Transaction::run_commit_handlers(CATransactionPhase) + 46
    7   com.apple.QuartzCore            0x00007fff97a9a12f CA::Context::commit_transaction(CA::Transaction*) + 959
    8   com.apple.QuartzCore            0x00007fff97990d55 CA::Transaction::commit() + 475
    9   com.apple.AppKit                0x00007fff8ff00c69 __37+[NSDisplayCycle currentDisplayCycle]_block_invoke.31 + 323
    10  com.apple.CoreFoundation        0x00007fff91e75ec7 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 23
    11  com.apple.CoreFoundation        0x00007fff91e75e37 __CFRunLoopDoObservers + 391
    12  com.apple.CoreFoundation        0x00007fff91e56d79 __CFRunLoopRun + 873
    13  com.apple.CoreFoundation        0x00007fff91e567b4 CFRunLoopRunSpecific + 420
    14  com.apple.HIToolbox             0x00007fff913f2fbc RunCurrentEventLoopInMode + 240
    15  com.apple.HIToolbox             0x00007fff913f2cf9 ReceiveNextEventCommon + 184
    16  com.apple.HIToolbox             0x00007fff913f2c26 _BlockUntilNextEventMatchingListInModeWithFilter + 71
    17  com.apple.AppKit                0x00007fff8fadcb79 _DPSNextEvent + 1093
    18  com.apple.AppKit                0x00007fff901f21c3 -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 1637
    19  com.apple.AppKit                0x00007fff8fad153d -[NSApplication run] + 926
    20  com.apple.AppKit                0x00007fff8fa9c1ad NSApplicationMain + 1237
    21  libdyld.dylib                   0x00007fffa6fc3255 start + 1

    Thread 1:
    0   libsystem_kernel.dylib          0x00007fffa70f1fde __semwait_signal + 10
    1   libsystem_c.dylib               0x00007fffa7078b72 nanosleep + 199
    2   libc++.1.dylib                  0x00007fffa5ba865b std::__1::this_thread::sleep_for(std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l> > const&) + 80
    3   com.apple.JavaScriptCore        0x00007fff94ccb3df void std::__1::this_thread::sleep_for<long long, std::__1::ratio<1l, 1000l> >(std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000l> > const&) + 63
    4   com.apple.JavaScriptCore        0x00007fff94cca3d1 bmalloc::waitUntilFalse(std::__1::unique_lock<bmalloc::StaticMutex>&, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000l> >, bool&) + 113
    5   com.apple.JavaScriptCore        0x00007fff94cca220 bmalloc::Heap::scavenge(std::__1::unique_lock<bmalloc::StaticMutex>&, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000l> >) + 48
    6   com.apple.JavaScriptCore        0x00007fff94cca0b4 bmalloc::Heap::concurrentScavenge() + 68
    7   com.apple.JavaScriptCore        0x00007fff94ccb621 bmalloc::AsyncTask<bmalloc::Heap, void (bmalloc::Heap::*)()>::threadRunLoop() + 97
    8   com.apple.JavaScriptCore        0x00007fff94ccb529 bmalloc::AsyncTask<bmalloc::Heap, void (bmalloc::Heap::*)()>::threadEntryPoint(bmalloc::AsyncTask<bmalloc::Heap, void (bmalloc::Heap::*)()>*) + 9
    9   com.apple.JavaScriptCore        0x00007fff94ccb7dd void* std::__1::__thread_proxy<std::__1::tuple<void (*)(bmalloc::AsyncTask<bmalloc::Heap, void (bmalloc::Heap::*)()>*), bmalloc::AsyncTask<bmalloc::Heap, void (bmalloc::Heap::*)()>*> >(void*) + 93
    10  libsystem_pthread.dylib         0x00007fffa71daaab _pthread_body + 180
    11  libsystem_pthread.dylib         0x00007fffa71da9f7 _pthread_start + 286
    12  libsystem_pthread.dylib         0x00007fffa71da221 thread_start + 13

[...]