Visual Studio 2015 кросс-платформенный c++ зависает после сборки в vslog!VSResponsiveness:: Объезды

У меня есть Visual Studio 2015 Professional Update 2 crossplatform c++ решение с общими, android и ios проектов. Похоже, что проекты строятся успешно, но затем Visual Studio зависает. Не удается отменить сборку или перезапустить visual studio. Я должен убить процесс devenv, затем открыть его снова.

В windbg я вижу висящую нить как это:

0:000> kb
ChildEBP RetAddr  Args to Child              
0018f228 754da4fa 00000001 0018f3fc 00000001 ntdll!NtWaitForMultipleObjects+0xc
0018f3bc 7447c47b 00000001 0018f3fc 00000000 KERNELBASE!WaitForMultipleObjectsEx+0x10a
0018f424 6cb610f7 00000000 00000000 ffffffff user32!MsgWaitForMultipleObjectsEx+0x17b
0018f448 5ec48c36 00000000 00000000 ffffffff vslog!VSResponsiveness::Detours::DetourMsgWaitForMultipleObjectsEx+0x45
0018f490 5eb072d5 7c443f4b 00000000 00d96a00 msenv!CMsoCMHandler::EnvironmentMsgLoop+0x15b
0018f4b8 5eb0722b 00000001 ffffffff 7c443f0b msenv!CMsoCMHandler::FPushMessageLoop+0x105
0018f4f8 5eb0716f 00000001 0917f998 00001684 msenv!SCM::FPushMessageLoop+0xb9
0018f518 5eb07136 00d96a04 050fe9c8 ffffffff msenv!SCM_MsoCompMgr::FPushMessageLoop+0x2a
0018f544 5eb07086 ffffffff 7c443e2b 00000000 msenv!CMsoComponent::PushMsgLoop+0x2e
0018f5d8 5ebf23b3 7c443df3 00000000 5eac0000 msenv!VStudioMainLogged+0x5bd
0018f600 2f5afed2 00ce3b20 0c66fc01 00000000 msenv!VStudioMain+0x7c
0018f640 2f5afaaa 0c66f359 74b9aba0 2f5bfa50 devenv!util_CallVsMain+0xde
0018f918 2f5c36e3 00000000 2f5fa570 003f9000 devenv!CDevEnvAppId::Run+0xbb5
0018f944 2f5c3803 2f5a0000 00000000 00cd50c5 devenv!WinMain+0xbd
0018f990 74b938f4 003f9000 74b938d0 57fa7e12 devenv!__scrt_common_main_seh+0xfd
0018f9a4 77455de3 003f9000 54766e72 00000000 kernel32!BaseThreadInitThunk+0x24
0018f9ec 77455dae ffffffff 7747b7dd 00000000 ntdll!__RtlUserThreadStart+0x2f
0018f9fc 00000000 2f5c0fe2 003f9000 00000000 ntdll!_RtlUserThreadStart+0x1b

Вот то !анализ выходных данных:

0:000> !analyze -v
*******************************************************************************
*                                                                             *
*                        Exception Analysis                                   *
*                                                                             *
*******************************************************************************

*** WARNING: Unable to verify checksum for PresentationCore.ni.dll
*** WARNING: Unable to verify checksum for System.ni.dll
*** WARNING: Unable to verify checksum for WindowsBase.ni.dll
*** WARNING: Unable to verify checksum for Microsoft.VisualStudio.Shell.14.0.ni.dll
*** WARNING: Unable to verify checksum for System.Runtime.Remoting.ni.dll
*** WARNING: Unable to verify checksum for Microsoft.Build.ni.dll
*** WARNING: Unable to verify checksum for Microsoft.CodeAnalysis.Features.ni.dll
*** WARNING: Unable to verify checksum for Microsoft.CodeAnalysis.Workspaces.ni.dll
*** WARNING: Unable to verify checksum for Microsoft.VisualStudio.JSLS.ni.dll
*** The OS name list needs to be updated! Unknown Windows version: 10.0 ***

FAULTING_IP: 
+0
00000000 ??              ???

EXCEPTION_RECORD:  ffffffff -- (.exr 0xffffffffffffffff)
ExceptionAddress: 00000000
   ExceptionCode: 80000007 (Wake debugger)
  ExceptionFlags: 00000000
NumberParameters: 0

CONTEXT:  00000000 -- (.cxr 0x0;r)
eax=000000b8 ebx=00000001 ecx=00000000 edx=00000000 esi=00000001 edi=00000001
eip=7746718c esp=0018f22c ebp=0018f3bc iopl=0         nv up ei pl nz na po nc
cs=0023  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00000202
ntdll!NtWaitForMultipleObjects+0xc:
7746718c c21400          ret     14h

BUGCHECK_STR:  80000007

DEFAULT_BUCKET_ID:  APPLICATION_HANG

PROCESS_NAME:  devenv.exe

ERROR_CODE: (NTSTATUS) 0x80000007 - {Kernel Debugger Awakened}  the system debugger was awakened by an interrupt.

EXCEPTION_CODE: (HRESULT) 0x80000007 (2147483655) - Operation aborted

APP:  devenv.exe

ANALYSIS_VERSION: 6.3.9600.16384 (debuggers(dbg).130821-1623) x86fre

MANAGED_STACK: !dumpstack -EE
OS Thread Id: 0x9ac (0)
TEB information is not available so a stack size of 0xFFFF is assumed
Current frame: 
ChildEBP RetAddr  Caller, Callee

DERIVED_WAIT_CHAIN:  

Dl Eid Cid     WaitType
-- --- ------- --------------------------
   0   1684.9ac Handle                 

WAIT_CHAIN_COMMAND:  ~0s;k;;

BLOCKING_THREAD:  000009ac

PRIMARY_PROBLEM_CLASS:  APPLICATION_HANG

LAST_CONTROL_TRANSFER:  from 754da4fa to 7746718c

FAULTING_THREAD:  00000000

STACK_TEXT:  
0018f228 754da4fa 00000001 0018f3fc 00000001 ntdll!NtWaitForMultipleObjects+0xc
0018f3bc 7447c47b 00000001 0018f3fc 00000000 KERNELBASE!WaitForMultipleObjectsEx+0x10a
0018f424 6cb610f7 00000000 00000000 ffffffff user32!MsgWaitForMultipleObjectsEx+0x17b
0018f448 5ec48c36 00000000 00000000 ffffffff vslog!VSResponsiveness::Detours::DetourMsgWaitForMultipleObjectsEx+0x45
0018f490 5eb072d5 7c443f4b 00000000 00d96a00 msenv!CMsoCMHandler::EnvironmentMsgLoop+0x15b
0018f4b8 5eb0722b 00000001 ffffffff 7c443f0b msenv!CMsoCMHandler::FPushMessageLoop+0x105
0018f4f8 5eb0716f 00000001 0917f998 00001684 msenv!SCM::FPushMessageLoop+0xb9
0018f518 5eb07136 00d96a04 050fe9c8 ffffffff msenv!SCM_MsoCompMgr::FPushMessageLoop+0x2a
0018f544 5eb07086 ffffffff 7c443e2b 00000000 msenv!CMsoComponent::PushMsgLoop+0x2e
0018f5d8 5ebf23b3 7c443df3 00000000 5eac0000 msenv!VStudioMainLogged+0x5bd
0018f600 2f5afed2 00ce3b20 0c66fc01 00000000 msenv!VStudioMain+0x7c
0018f640 2f5afaaa 0c66f359 74b9aba0 2f5bfa50 devenv!util_CallVsMain+0xde
0018f918 2f5c36e3 00000000 2f5fa570 003f9000 devenv!CDevEnvAppId::Run+0xbb5
0018f944 2f5c3803 2f5a0000 00000000 00cd50c5 devenv!WinMain+0xbd
0018f990 74b938f4 003f9000 74b938d0 57fa7e12 devenv!__scrt_common_main_seh+0xfd
0018f9a4 77455de3 003f9000 54766e72 00000000 kernel32!BaseThreadInitThunk+0x24
0018f9ec 77455dae ffffffff 7747b7dd 00000000 ntdll!__RtlUserThreadStart+0x2f
0018f9fc 00000000 2f5c0fe2 003f9000 00000000 ntdll!_RtlUserThreadStart+0x1b


FOLLOWUP_IP: 
vslog!VSResponsiveness::Detours::DetourMsgWaitForMultipleObjectsEx+45
6cb610f7 8bf0            mov     esi,eax

SYMBOL_STACK_INDEX:  3

SYMBOL_NAME:  vslog!VSResponsiveness::Detours::DetourMsgWaitForMultipleObjectsEx+45

FOLLOWUP_NAME:  MachineOwner

MODULE_NAME: vslog

IMAGE_NAME:  vslog.dll

DEBUG_FLR_IMAGE_TIMESTAMP:  56f22f38

STACK_COMMAND:  ~0s ; kb

BUCKET_ID:  80000007_vslog!VSResponsiveness::Detours::DetourMsgWaitForMultipleObjectsEx+45

FAILURE_BUCKET_ID:  APPLICATION_HANG_80000007_vslog.dll!VSResponsiveness::Detours::DetourMsgWaitForMultipleObjectsEx

ANALYSIS_SOURCE:  UM

FAILURE_ID_HASH_STRING:  um:application_hang_80000007_vslog.dll!vsresponsiveness::detours::detourmsgwaitformultipleobjectsex

FAILURE_ID_HASH:  {4beed356-b376-19fc-7fdd-b5445b7b3d57}

Followup: MachineOwner
---------

0:000> lmvm vslog
start    end        module name
6cb60000 6cbc2000   vslog      (pdb symbols)          C:Program Files (x86)Windows Kits.1Debuggersx86symVsLog.pdb3146AA39DE4D9B96281A205CEFA40A2VsLog.pdb
    Loaded symbol image file: vslog.dll
    Mapped memory image file: C:Program Files (x86)Windows Kits.1Debuggersx86symvslog.dllF22F3862000vslog.dll
    Image path: C:Program Files (x86)Microsoft Visual Studio 14.0Common7IDEvslog.dll
    Image name: vslog.dll
    Timestamp:        Wed Mar 23 01:52:56 2016 (56F22F38)
    CheckSum:         0006D56A
    ImageSize:        00062000
    File version:     14.0.25123.0
    Product version:  14.0.25123.0
    File flags:       0 (Mask 3F)
    File OS:          4 Unknown Win32
    File type:        1.0 App
    File date:        00000000.00000000
    Translations:     0409.04b0
    CompanyName:      Microsoft Corporation
    ProductName:      Microsoft® Visual Studio® 2015
    InternalName:     VsLog.DLL
    OriginalFilename: VsLog.DLL
    ProductVersion:   14.0.25123.0
    FileVersion:      14.0.25123.0 built by: D14REL
    FileDescription:  Visual Studio Logging
    LegalCopyright:   © Microsoft Corporation. All rights reserved.

1 ответ

  1. Нет решения, но я хотел бы добавить, что я получаю такое же зависание на NTWaitformultipleObjects часто в моем решении VS2015 при удалении элементов из проекта.