Jump to content

ssv

Members
  • Posts

    4
  • Joined

  • Last visited

LabVIEW Information

  • Version
    LabVIEW 8.6
  • Since
    2006

ssv's Achievements

Newbie

Newbie (1/14)

0

Reputation

  1. No you cant, if you later run a "Get" to get the image out via the reference then it will return an error since the image reference has been closed down. Remember that images are transferred "by reference", there is no image data in the wire. And I need to access the image in a later step. Similarly with Tasks, if I start a task (for instance a counter) then I cant just restart it if it has been closed down - it is continously counting of pulses.
  2. Hi ShaunR Yes using self initialising VIs for VISA and such is very effective. It is however not exactly what im looking for. The references I need are IMAQ sessions and DAQ Tasks, they cannot just be opened and closed like a VISA COM port.
  3. Thanks for you reply Yair I do load the functional global (F.G.) into memory first, in my main VI (this actually is a set of costum steps used in TestStand so i load the F.G.'s in a initialization step). However, this is apparently not enough, since LabVIEW still closes the references even though they have been moved to the F.G. I would really like not to have to open the references in a daemon, since it is quite advanced DAQ that is going on (up to 6 parallel tasks sharing triggers and sample clock across two cDAQ systems) with many different setups. Is there no way to protect a reference from labview cleanup? Can I disable the cleanup for specific VIs or just turn it on and off when I dont want it to destroy my references? Thanks for your reply Mellroth What you are saying is basicly the same as Yair, move the create reference to a daemon (or F.G. type external handler) which is in memory outside the VI called by the Run VI method. It will solve the problem, but the complexity of the application will also become much greater. If there is no way to work around the LabVIEW cleanup I guess I will have to move the creation of references to an external handler. I wish there was a way to tell LabVIEW not to run the cleanup or to protect specific references.
  4. Hello everyone. I have an application where I call most VIs with the "Run VI" method (Wait until Done = T, Auto Dispose Ref = F). In some of these VIs I open references (DAQmx Tasks, IMAQdx sessions etc.) that should be kept open after the VI stops running, because I need to use them later in other VIs. I am using a functional global to store the references. An example of this is starting a DAQ counter Task, storing the Task in a functional global. Later getting the Task from the functional global and read out the value of the counter. The issue is that references opened inside a VI called with the "Run VI" method are closed by LabVIEW when the VI stops running, in an attempt to avoid memory leaks (at least that is what I think it is). How can I awoid this? Hope you can help me out. /Simon
×
×
  • Create New...

Important Information

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