Answered by:
Hung app error 0xCFFFFFFF - how to debug from triagedump?

Question
-
Several users have encountered this. From VS2013 with triagedump.dmp, I get:
Unhandled exception at 0x00000000 in TenCalc Hang 3c2f7642-5ba9-4d06-817b-beffe890c413_Hang_23339307 triagedump.dmp: 0xCFFFFFFF: Process was unresponsive and was terminated.
Call stack:
ntdll.dll!_NtWaitForMultipleObjects@20() Unknown
Windows.UI.Xaml.dll!CD3D11Device::TrimMemory(void) Unknown
Windows.UI.Xaml.dll!AgCoreCallbacks::FrameworkCallbacks_BudgetService_StoreFrameTime() UnknownI have never seen this app (TenCalc) hang and have no idea how to chase this issue down.
I'd appreciate any help! Thanks,
Gerald Maffeo
Gerald Maffeo
Monday, May 12, 2014 8:33 PM
Answers
-
Hi Gerald,
The crash dump sounds like a System.UnAuthorizedException that could potentially happen due to the async void function declaration and the hang dump seems to be locked due to similar reasons. Since it’s a triage dump, we can only do very little debugging with it.
I think you should first change your code to return async Task instead of void to prevent any sort of race conditions when continuing from the returned call to NotifyUser.
You don’t get a compile error because async void is syntactically correct and can be used for top-level return handlers.
There is a very good Channel 9 video tip that goes over the pitfalls of async void: http://channel9.msdn.com/Series/Three-Essential-Tips-for-Async/Tip-1-Async-void-is-for-top-level-event-handlers-only.
Thanks,
Prashant.
Windows Store Developer Solutions, follow us on Twitter: @WSDevSol|| Want more solutions? See our blog
- Marked as answer by GeraldMaffeo Wednesday, May 14, 2014 1:06 AM
Wednesday, May 14, 2014 12:55 AMModerator
All replies
-
-
Prashant - Again, thanks much for the speedy reply. Here's a link to the dumps as well as a possible explanation.
Gerald
Gerald Maffeo
Tuesday, May 13, 2014 5:20 PM -
Hi Gerald,
The crash dump sounds like a System.UnAuthorizedException that could potentially happen due to the async void function declaration and the hang dump seems to be locked due to similar reasons. Since it’s a triage dump, we can only do very little debugging with it.
I think you should first change your code to return async Task instead of void to prevent any sort of race conditions when continuing from the returned call to NotifyUser.
You don’t get a compile error because async void is syntactically correct and can be used for top-level return handlers.
There is a very good Channel 9 video tip that goes over the pitfalls of async void: http://channel9.msdn.com/Series/Three-Essential-Tips-for-Async/Tip-1-Async-void-is-for-top-level-event-handlers-only.
Thanks,
Prashant.
Windows Store Developer Solutions, follow us on Twitter: @WSDevSol|| Want more solutions? See our blog
- Marked as answer by GeraldMaffeo Wednesday, May 14, 2014 1:06 AM
Wednesday, May 14, 2014 12:55 AMModerator