Jump to content

Bad crash under XP Embedded


Thoric

Recommended Posts

I'm working on a LV 2013 application that will run on an XP Embedded platform.

Under my development environment it runs great, but when installed on the XP Embedded system it will run for a few minutes, and then pop with a very ungraceful "DAbort in ThEvent.cpp" message.

 

I've tried to track this down to some action or event, but it appears to be relatively random. I had noticed, in older versions of the code, a memory leak, but that's been resolved since and yet the crash persists.

 

I know XP Embedded is not officially supported, but this embedded installation is virtually a full XP installation, so there shouldn't be any concerns there (I hope). Anyone know where I can start with diagnosis of a crash like this? Google isn't helping, so I need to perform investigative effort but I really can't think where to start!

Link to comment

OK, so I was wrong. There's still a memory leak, but only in the built executable! In the development environment LabVIEW's memory usage remains fixed (according to Task Manager left running for many minutes), but the executable is eating about 10 kB/s.

 

My code has a few individual components that communicate through User Events. There are events flying about pretty much all the time. The user event type is an abstract class, who's children are the actual event messages. So I have a small number of class instances being created and passed around every second. That's about the only thing happening in the code when you launch it, a handful of events being fired every second to inform the user interface of state changes etc.

 

Anyone have a theory as to why the IDE code runs without a memory leak, but the built executable leaks like a sieve??

Link to comment
  • 2 weeks later...

Thanks for replying Shoneill,

 

XP Embedded is essentially the same as XP, so the LabVIEW code is identical. Real-Time is a wholly different kettle of fish, and there you have no static events, but you can still have user events.

 

Anyway, the crash turned out to be a memory leak issue, which turned out to be due to my own coding error. I had a "Register for Event" node inside a while loop when it should have been before it, so consequently I was creating a new reference to the user event with each iteration of the while loop. Ooops.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.