Re: [Mingw-w64-public] hang on exit
after programs hangs this is backtrace. Could be an issue with condition_variable destruction? (gdb) thread apply all bt Thread 2 (Thread 2556.0xa84): #0 0x772a884f in ntdll!DbgBreakPoint () from C:\Windows\system32\ntdll.dll #1 0x772ecdc0 in ntdll!DbgUiRemoteBreakin () from C:\Windows\system32\ntdll.dll #2 0x76843a0b in ?? () #3 0x in ?? () Thread 1 (Thread 2556.0xd00): #0 0x772c5ca4 in ntdll!KiFastSystemCallRet () from C:\Windows\system32\ntdll.dll #1 0x772c5460 in ntdll!ZwWaitForMultipleObjects () from C:\Windows\system32\ntdll.dll #2 0x76f0a7f7 in WaitForMultipleObjectsEx () from C:\Windows\system32\kernel32.dll #3 0x0002 in ?? () #4 0x0022fb7c in ?? () #5 0x76f0a910 in WaitForMultipleObjects () from C:\Windows\system32\kernel32.dll #6 0x64942034 in pthread_cond_init () from C:\mingw32-4.8.2-posix-dwarf\bin\libwinpthread-1.dll #7 0x6494234f in pthread_cond_init () from C:\mingw32-4.8.2-posix-dwarf\bin\libwinpthread-1.dll #8 0x649423d8 in pthread_cond_destroy () from C:\mingw32-4.8.2-posix-dwarf\bin\libwinpthread-1.dll #9 0x6fc9abab in libstdc++-6!_ZNSt18condition_variableD2Ev () from C:\mingw32-4.8.2-posix-dwarf\bin\libstdc++-6.dll #10 0x64442cbf in locked_queueint::~locked_queue (this=0x6444c020 gDiskI, __in_chrg=optimized out) at C:/LUA/luamidi-master/lockedqueueDLL/lockedqueue.hpp:11 #11 0x64442ab7 in _fu5___ZSt4cout () at C:\LUA\luamidi-master\lockedqueueDLL\lockedqueuedll.cpp:12 #12 0x644417d9 in __tcf_1 () at C:\LUA\luamidi-master\lockedqueueDLL\lockedqueuedll.cpp:42 #13 0x644411cb in _CRT_INIT@12 () from C:\LUA\luamidi-master\buildlockeddebug\liblockedqueuedll.dll #14 0x644413ed in __DllMainCRTStartup () from C:\LUA\luamidi-master\buildlockeddebug\liblockedqueuedll.dll #15 0x64441493 in DllMainCRTStartup@12 () from C:\LUA\luamidi-master\buildlockeddebug\liblockedqueuedll.dll #16 0x772cf840 in ntdll!EtwSendNotification () from C:\Windows\system32\ntdll.dll #17 0x7729b27c in ntdll!RtlExitUserProcess () from C:\Windows\system32\ntdll.dll #18 0x7729b1fe in ntdll!RtlExitUserProcess () from C:\Windows\system32\ntdll.dll #19 0x76f04409 in KERNEL32!ExitProcess () from C:\Windows\system32\kernel32.dll #20 0x in ?? () -- Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349831iu=/4140/ostg.clktrk ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] hang on exit
extern C __declspec(dllexport) BOOL APIENTRY DllMain should be the declaration for DllMain for being called but DLL_THREAD_DETACH and DLL_PROCESS_DETACH are not received until ioThreadFunc exits, so I have made unload function to call destructor manually. The problem now is that destructor is called twice and in release mode there is an exception - Original Message - From: Victor Bombi son...@telefonica.net To: mingw-w64-public@lists.sourceforge.net Sent: Saturday, December 14, 2013 10:23 AM Subject: Re: [Mingw-w64-public] hang on exit Another thing to try would be to define DllMain but it seems not to be called. Why? FreeLibrary does call destructor in this case. (outputs 1 is joinable) there are several things to try: -dont call new to initialize -dont call FreeLibrary to unload (4 different cases) in some cases the hang seems to be on thread:join in others in ioThreadFunc victor -- Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349831iu=/4140/ostg.clktrk ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public -- Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349831iu=/4140/ostg.clktrk ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] hang on exit
Hi, the questionable point here is that I am not sure we should call destructor code for PROCESS_DETACH too. We should always see in front a thread-detach, so this call seems to be pretty superflous (and might be even wrong). If you want you can modify crt-code so that destructor are just called for detach-thread case. Regards, Kai 2013/12/17 Victor Bombi son...@telefonica.net: extern C __declspec(dllexport) BOOL APIENTRY DllMain should be the declaration for DllMain for being called but DLL_THREAD_DETACH and DLL_PROCESS_DETACH are not received until ioThreadFunc exits, so I have made unload function to call destructor manually. The problem now is that destructor is called twice and in release mode there is an exception - Original Message - From: Victor Bombi son...@telefonica.net To: mingw-w64-public@lists.sourceforge.net Sent: Saturday, December 14, 2013 10:23 AM Subject: Re: [Mingw-w64-public] hang on exit Another thing to try would be to define DllMain but it seems not to be called. Why? FreeLibrary does call destructor in this case. (outputs 1 is joinable) there are several things to try: -dont call new to initialize -dont call FreeLibrary to unload (4 different cases) in some cases the hang seems to be on thread:join in others in ioThreadFunc victor -- Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349831iu=/4140/ostg.clktrk ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public -- Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349831iu=/4140/ostg.clktrk ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public -- Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349831iu=/4140/ostg.clktrk ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] hang on exit
If I call destructor with unload method, destructor is called two times. Something is going wrong as it is working also on windows with other compilers - Original Message - From: JonY jo...@users.sourceforge.net To: mingw-w64-public@lists.sourceforge.net Sent: Saturday, December 14, 2013 1:34 AM Subject: Re: [Mingw-w64-public] hang on exit -- Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349831iu=/4140/ostg.clktrk ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public -- Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349831iu=/4140/ostg.clktrk ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] hang on exit
FreeLibrary does call destructor in this case. (outputs 1 is joinable) there are several things to try: -dont call new to initialize -dont call FreeLibrary to unload (4 different cases) in some cases the hang seems to be on thread:join in others in ioThreadFunc victor - Original Message - From: JonY jo...@users.sourceforge.net To: mingw-w64-public@lists.sourceforge.net Sent: Saturday, December 14, 2013 1:34 AM Subject: Re: [Mingw-w64-public] hang on exit -- Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349831iu=/4140/ostg.clktrk ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public -- Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349831iu=/4140/ostg.clktrk ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] hang on exit
Another thing to try would be to define DllMain but it seems not to be called. Why? FreeLibrary does call destructor in this case. (outputs 1 is joinable) there are several things to try: -dont call new to initialize -dont call FreeLibrary to unload (4 different cases) in some cases the hang seems to be on thread:join in others in ioThreadFunc victor -- Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349831iu=/4140/ostg.clktrk ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
[Mingw-w64-public] hang on exit
Hello, I trying to solve a hang on program exit caused by a dll that is only seems to be happening in my mingw64 compilation. The program supercollider is very big so I have created a small test case in https://github.com/sonoro1234/hangonexit any help would be much appreciated victor -- Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349831iu=/4140/ostg.clktrk ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] hang on exit
On 12/14/2013 03:16, Victor Bombi wrote: Hello, I trying to solve a hang on program exit caused by a dll that is only seems to be happening in my mingw64 compilation. The program supercollider is very big so I have created a small test case in https://github.com/sonoro1234/hangonexit any help would be much appreciated I don't think FreeLibrary will call the C++ destructors, you need to call gDiskI.~DiskIOThread manually. signature.asc Description: OpenPGP digital signature -- Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349831iu=/4140/ostg.clktrk___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public