07-24-2007 09:23 AM
07-24-2007 02:59 PM
07-24-2007 03:00 PM
I just forgot to point out clearly: I do not expect the DLL to be the origin for your memory problem.
Guenter
07-25-2007 01:40 AM
07-25-2007 02:21 PM
07-26-2007 10:18 AM
Hi, many thanks again.
I have checked about queue help info, it's now clearer and look to be a good solution. I have just a question: can I open the queue each time I want to write/read on it; or the best way is to pass the queue data trough the different subVI's? (have a look on the attached main_OPEN and main_IN_OUT files)
The question is not trivial, since there are hundreds of functions where the LOG functionality should be modified (from string to queue), in the other hand I guess that the passed data has better performance....
Gatet
07-26-2007 01:21 PM
Hi Gatet.
Yes, you can obtain the queue each time you want to enqueue an element.
You will get better performance by wiring the queue instead of obtaining a reference each time you want to enqueue an element. (Obtain Queue might take a couple of milliseconds even if the queue already exists.)
You can prevent wiring the queue to all of your VIs by
(1) using a global variable of the type queue (obtain the queue once and write it to the global variable).
(2) having the queue "live" in a so-called "functional global VI". Ben's nugget has a short introduction on them (and covers some more ideas what you can do with VIs that store data in an uninitialised shift-register).
Regards, Guenter