|
|
Home » U++ Library support » U++ Callbacks and Timers » Strange crash connected to Timer
Strange crash connected to Timer [message #25764] |
Wed, 10 March 2010 21:39 |
nixnixnix
Messages: 415 Registered: February 2007 Location: Kelowna, British Columbia
|
Senior Member |
|
|
Hi,
I've been getting regular but hard to repeat crashes so I let my software go in debug mode and found the attached call stack. I'm not sure if it is something I am doing or a slight bug in UPP that only I see because I run a function that looks like this
void OpenWind::OnTimer()
{
// update the UI
bool b = AreWeFree();
m_pSaveButton->Enable(b);
m_pNewButton->Enable(b);
m_pEditButton->Enable(b);
::SetTimeCallback(1000,THISBACK(OnTimer));
}
in order to update the state of my toolbar buttons. As you can see, OnTimer is called every second for the whole time my software is running. The crash happens when I am running other threads concurrently. Am only posting this here because the call stack consists entirely of UPP code.
Nick
[Updated on: Wed, 10 March 2010 21:41] Report message to a moderator
|
|
|
|
|
|
Re: Strange crash connected to Timer [message #25796 is a reply to message #25790] |
Fri, 12 March 2010 02:14 |
nixnixnix
Messages: 415 Registered: February 2007 Location: Kelowna, British Columbia
|
Senior Member |
|
|
Hi Mirek,
The other threads listed are all in either ntdll.dll or in USER32.dll. In each case there is no call stack to paste here, just an address within each dll. They are below:
thread ID | DLL | address
0x80c - this is the thread which was described in my original post
0x564 | USER32.dll | 0x768f7e47
0x610 | ntdll.dll | 0x77cf00fd
0xbf8 | USER32.dll | 0x768f7e47
0xf84 | ntdll.dll | 0x77cefd31
0xcf0 | ntdll.dll | 0x77cf1ee6
My app ran for almost 200 iterations before it hit this. Sometimes its as few as 13 iterations. Other times it can run for over 5000 iterations.
EDIT: how do I copy and paste the callstack please? I've tried various things but can't quite figure it out. Also, I have disabled the OnTimer method and still get the crashes. I think I have a better example to paste but it would be good to know how to copy the callstack.
EDIT2: I do not use GuiLock but I didn't think I needed to if I always use PostCallback to update the interface. Is this correct? What if I have several threads posting GUI related callbacks to a function in the main thread?
Nick
[Updated on: Fri, 12 March 2010 03:18] Report message to a moderator
|
|
|
|
|
|
Goto Forum:
Current Time: Thu Mar 28 10:54:29 CET 2024
Total time taken to generate the page: 0.00895 seconds
|
|
|