Home  Search  Register  Login  Recent Posts

Information on DTN's Industries:
DTN Oil & Gas | DTN Trading | DTN Agriculture | DTN Weather
Follow DTNMarkets on Twitter
DTN.IQ/IQFeed on Twitter
DTN News and Analysis on Twitter
»Forums Index »Archive (2017 and earlier) »DTN Satellite Products »DTN - NxCoreAPI 2.4 - processTape runs out of memory - who/when to delete msgs?
Author Topic: DTN - NxCoreAPI 2.4 - processTape runs out of memory - who/when to delete msgs? (4 messages, Page 1 of 1)

jerry walton
-Interested User-
Posts: 3
Joined: May 3, 2008


Posted: May 3, 2008 02:40 PM          Msg. 1 of 4
I am running the NxCoreAPI sample program (SampleOne) with Visual C++ 2008 Express Edition.

I have read all the documentation and the sample programs and did NOT find a single delete
statement anywhere?

who is responsible for deleting the messages received in the callback?

int __stdcall nxCoreCallback(const NxCoreSystem* pNxCoreSys, const NxCoreMessage* pNxCoreMsg)

who deletes pNxCoreSys and pNxCoreMsg?
when can these be deleted?

jerry walton
-Interested User-
Posts: 3
Joined: May 3, 2008


Posted: May 3, 2008 03:40 PM          Msg. 2 of 4
I thought about it and since the NxCoreAPI is a DLL,
then it is probably a not a good idea to delete an object (memory)
that was allocated by the DLL.

what I am experiencing is that when running SampleOne.cpp to process a tape
and displaying a simple counter - that the program memory just gorws and grows
until eventually the program crashes because it runs out of memory.

so what is the correct way to handle the freeing of resources?

it there anything to code to fix this problem?

DTN_Steve_S
-DTN Guru-
Posts: 2091
Joined: Nov 21, 2005


Posted: May 5, 2008 10:39 AM          Msg. 3 of 4
Hello Jerry, Unfortunately, there is noone that monitors these forums who is familiar with the NXCore product line to answer your questions. I have contacted the NXCore support personel and they should be contacting you via email (the address you provided in your message board profile).

jerry walton
-Interested User-
Posts: 3
Joined: May 3, 2008


Posted: May 5, 2008 12:01 PM          Msg. 4 of 4
I got this figured out.

It seems that a program using the NxCoreAPI.dll to process a tape,
will grow in memory usage up to about 45-50 MB and then "top off".

I was stopping the program prior to that point because I was
unsure if there was some responsibility on my part to free the
memory used by the messages.

I figured that since the memory was allocated in the NxCoreAPI.dll
that is was the responsibility of the dll to de-allocate/free the memory.

The documentation makes no mention of responsibility for freeing memory
used by messages or the fact that it will grow to a certain point and then catch up.
 

 

Time: Fri July 26, 2024 6:29 PM CFBB v1.2.0 8 ms.
© AderSoftware 2002-2003