Multi instance of function global

I have a multi-thread program. Everytime there is need, it will start a new thread. Each thread's code is the same, each thread will have a function global to save the data belong to this thread and exchange data for its own use with other programs.
How to make this function global.

File->VI Properties->Execution (dropdown menu)->Preallocate Clone for Each Instance
And what I was saying was to make your functional global a .vit instead of a .vi.  That way, you can call a VI Reference to it (but you have to use a typed reference), then use the Call By Reference Node to pass data to and from the FG.
In the picture, the Open VI Reference and Call by Reference Node (the two on the right) are under the Application Control palette.  To obtain a typed VI Refnum, go to your front panel, and drop a VI Refnum control (under Refnum).  Go to your block diagram, right click on the new control, and select "change to constant."  Then, drag and drop the VI you want to open onto the new constant you made, and the Call by Reference Node will now display the connector panel of the VI you dragged and dropped.
The advantage here is that you can assign one FG to a specific thread just by passing the reference through and using the call by reference node.  The downside is that it may not be as efficient as using reentrancy, but I never trust myself with reentrancy unless it's for very simple SubVIs.
Message Edited by JeffOverton on 06-06-2008 07:45 AM
=============
XP SP2, LV 8.2
CLAD
Attachments:
Example_VI_BD6.png ‏1 KB

Similar Messages

  • Do I need to use a semaphore when reading/writing a functional global from reentrant VIs?

    I have a program that spawns multiple reentrant VIs running simultaneously.  These VIs write their status to a functional global.  The VI that monitors them periodically polls this global to check out how they're doing and takes action based on their collective status.  (BTW, I'll mention that this monitoring VI is NOT the parent that spawned the reentrants, just in case this might affect memory management as it pertains to my question.)
    Anyway, 90% of the time, stuff goes off without a hitch.  However, once in a while the whole thing hangs.  I'm wondering if there's any chance that I've overlooked something and that some kind of collision is occurring at the global.  If that's the case, then should I be setting a semaphore for the global read/writes?
    And, if this is a problem, then there is something deep about functional globals that I don't yet understand.  My notion of them is that they should negate the need for a semaphore, since there is only one global instance, which cannot be simultaneously called by the various reentrants.  Indeed, this is arguably THE WHOLE POINT about functional globals, is it not?  Or am I missing something?
    Thanks,
    Nick 
    "You keep using that word. I do not think it means what you think it means." - Inigo Montoya

    Thanks Uwe,
    This is a good hunch.  However, functional globals typically run at "subroutine" priority.  With this priority, it is not possible to select a specific execution system; it is always "same as caller."
    I will try your suggestion by switching to "time-critical" priority.  However, I do not know if this could lead to a different set of issues (non-determinism?).  It will probably take a little while to hear back from my guys on whether this makes a difference or not, because the error is sporadic, and sometimes doesn't come along for quite a while.
    While probing all of this, I looked at the execution settings for my reentrant VI.  It has standard settings: "normal" priority, running in the "same as caller" execution system.  My impression has always been that LV creates the clones with unique names.  This allows the clones to be in the same execution system with no problem, and the fact that the execution dialog allows me to choose "same as caller" for a reentrant VI supports this assertion.  This is logical, since there could potentially be many more clones than available execution systems.  "Preallocate clone for each instance" is selected, which is what I want, I think, though I don't know if it matters in my application.
    In summary, I am trying out your suggestion, but with skepticism.  Any other suggestions from anyone out there?  Any misunderstandings on my part that need clarification?
    Thanks,
    Nick 
    "You keep using that word. I do not think it means what you think it means." - Inigo Montoya

  • What's wrong with a "regular" global in this case? AND WIl ActiveX objects stored in functional globals remain valid (when used in an executable)?

    I've written a plugin layer for a LV executable.  When this layer makes a call to the plugins' initialization functions, I want each plugin library to be able to initialize and maintain its own global memory (where things like VISA resource names or ActiveX objects are stored).  However, I've found that I can't manage to keep my global VIs "alive."  I'm inclined to switch to functional globals, but I suspect that this will be a problem for things like ActiveX objects (that in this particular case reference a CAN interface).  I believe that the functional global will indeed store the object from run to run, it's just that I'm somehow disinclined to think that the object will remain valid.  I think you'll have to re-initialize it.  Can anyone speak for or against this hunch?  (If you can't tell, I'm trying to avoid building a whole little test executable just to debug this problem.)
    I suppose the more profound question is "Why don't the globals stay in memory?"  I'm attaching an image of what the application layer that calls the plugins' intializations looks like.  Next I'm attaching an example of an actual initialization routine.  You'll notice that I've even gone so far as to explicitly open the ref to the global VI that I want to keep in memory.  Then I just leave it there dangling - but it still gets dropped!  In my mind I shouldn't even have to do this, since the dynamically-called subVI "MC_CMO Init.vi" actually initializes the globals and runs with AutoDisposeRef = False. 
    Lastly, this is my first-ever attempt at writting plugin software.  So if you look at my code and have any criticisms/pointers, I'll greatly appreciate them.
    Thanks in advance,
    Nick
    "You keep using that word. I do not think it means what you think it means." - Inigo Montoya
    Attachments:
    AppLayer.JPG ‏60 KB
    InitPlugin.JPG ‏103 KB

    I am not sure if I follow you completely on your work-around.
    Everything I have to say on this topic is based on obesrvations and threads I have read on Info-LabVIEW. Therefore it is subject to corecttion by those who know better.
    LV is smart enough to know when "something" that had been opened, can be closed. It is not perfect.
    If for instance you open a VISA refnum and pass the refnum  to a LV2 AS A REFNUM the refnum in the LV2 stay alive as long as the VI's are running.
    If you start another VI that uses the LV2 to fetch the refnum, it should get a valid ref as long as it starts before the first goes idle.
    You then be able to work with refnum usign the VI launched second as long as stays active.
    I often create action engine that can be invoked where required throughout an application. If the action engines get a ref in one state (like init) and use it another, I will generally write a "tester" that calls the action engine action to test the engine. In this case, my "tester" stays live and it keeps the ref's fresh.
    I suspect if you tried to trick LV you could. If you type cast the ref nums to I32 and stored those in a LV2, I could see how LV could loose track of the resource sharing, but that is something I would avoid.
    So I encourage you to do some experimenting with keeping track of who's running when to see if your work-around will work.
    If you think you understand it better than I explained it, please post.
    Trying to help,
    Ben
    Ben Rayner
    I am currently active on.. MainStream Preppers
    Rayner's Ridge is under construction

  • Multiple copies of functional global using vi references

    I have several producers aquiring data into a functional global (one functional global per producer). These functional globals are identical except for the name. Would it work to have only one functional global VI and obtain a separate reference for each producer? The matching consumer would also use the proper reference to consume the data.
    The functional global contains an array of the data which must be parsed by the consumer. It is possible that the array of data may not contain a complete set of data on a single "store" operation by the producer. The consumer, of course is written to check for a complete data record before completing processing on the record.
    Solved!
    Go to Solution.

    Les__Bartel wrote:
    tst wrote:
    Regardless of whether there is a better way, the answer to the question is yes. The FGV needs to be reentrant and the reference you open needs to be reentrant too and then you can use the CBR node to run the specific copy of the FGV.
    I thought a reentrant vi would not maintain the state of the uninitialized shift register from one call to the next.
    A reentrant VI will maintain the state of its uninitialized shift registers.  However, you need to be really careful how you do this.  First of all, you need to make sure it is set to Preallocate Clones.  What will happen in this situation is that each different place you call that subVI will each be a different clone.  This means that each call will have its own data.  The problem with this is that you can't share the data across multiple instances and therefore multiple loops.  If you don't believe me, go play with the Mean Point By Point VI.
    So what happens if you set it to shared clones?  A big freakin' mess.  You will have no control over which clone will be called where and there will be some major data corruption.
    This is why FGVs are almost always non-reentrant.
    There are only two ways to tell somebody thanks: Kudos and Marked Solutions
    Unofficial Forum Rules and Guidelines

  • Software timing - Functional Global?

    I was reading NI Intermediate manual to prepare for the CLD exam, and noticed that they used Functional global variable in combination with timed loop for the software timing. Also, the error handling was implemented using functional global.
    However, I was reading in one post( not this forum) that the functional global is obsolete, can anyone shed any light on this issue, why would the functional global be obsolete: and if it is, what are acceptable design for software timing.
    Thank you.

    Cory K wrote:
    I dont see why a global would be obsolete.
    There are some instances when using a global variable is the best option, especially in cases when a resource will be used on several different computers.
    A functional global variable isn't the same thing as a global variable. A functional global variable is what was used before global variables were introduced in LabVIEW 3. It is the heart of an Action Engine.
    As for their obsolesence... Hah! That's all I have to say on that.
    As to the original post:  I'm a tad suspicious. What kind of software timing and error handling is being done with a functional global variable? Can you post the code?

  • Functional global set as reentrant vi in CLD sample?

    In the CLD atm sample question attached. It set its functional global as a reentrant vi...
    Now let me get this right , a non reentrant vi, no matter how many times it's called, stores its data into one location. So a functional global should be a nonreentrant vi so the functional global can SET the same data in the same place, and GET the same data in the same place.
    Whereas a nonreentrant vi creates clones everytime it is called, and each clone stores a different set of data in a different place. So a functional global should not be a reentrant vi because it cannot retrieve the same copy of data; there are many different data sets stored in different places, the functional global would not know which data set to retrieve.
    But how come this CLD sample set its functional global as reentrant vi and it works???
    Attachments:
    ATM Simulator LV86.zip ‏116 KB

    richjoh wrote:
    In your VI code "Shared clone is selected"
    Below are past from the LV manual --
    "Memory Usage - Only allocates clone VIs for the maximum number of simultaneous calls to the reentrant VI. Decreases memory usage..."
    "Execution Speed - Creates clone VIs on demand. Slightly decreases execution speed and speed may vary per call.."
    ...and Preallocate is versa of above.
    Yes the only reason to use Reentrant in any LV example is to keep separate copies in memory. This author uses the reentrant VI to track 3 different transaction in his example (looks like an banking ATM, I have not run it as yet). The author reentrant is for "deposit", "withdrawal" and "pin entry". Ctrl+F, the VI is used in 4 instances, one of them is to Get current action, the other 3 are Set.
    IMHO, the example is overblown. Wonder how long it took the author to create it?
    The reason it works is all access is sequential.
    Overblown, yes. Reminds of the kid trying to show-off by climbing over the fence to pose next to the lion's cage. It will bite them eventually.
    Keep It Simple Sir has clearly bee violated.
    I will watch for someone who can explain WHY that was a good decision unless they felt there would 500 of these ATM GUIs running in parallel.
    Ben
    Ben Rayner
    I am currently active on.. MainStream Preppers
    Rayner's Ridge is under construction

  • Functional Global Variable on Hold

    Hello everyone,
    I understood, by reading threads on the forum, that a call to a Functional Global Variable will block its execution if the FGV is already being accessed by another VI, correct? Is there any other way it would block, apart from the stated?
    The motive of the question is that I have one FGV (non-reentrant) that is read by 8 subVIs concurrently (they are, actualy, the same vi, but configured to reentrant) and whose access time varies, strangely, based on the number of subvis running.
    When less than 5 VIs are trying to access the FGV, the execution is blocked (I assumed it, because when the FGV is disabled and replaced by a constant there is no problem with the execution) and the access lasts at least 50 ms; if this number is between 5 and 8, the execution is done much faster. My first guess was that the FGV hasn't been initialized until the fifth subVi is called, but I don't know how to check that.
    I can figure that there is something wrong with the FGV, but can't put my finger on it. Any ideas?
    Thank you in advance for any help.
    Solved!
    Go to Solution.

    Thank you for your response, Ben
    I'll try to explaing the problem better with the images that follow.
    I have 8 concurrent instances of the "bitDefiner.vi" - shown below - in the program.
    It reads from the AE (a simple read-write one) and it's the only one to call it besides the writer (that generates the appropriate signal), gets the rising edge of a waveform and determines how long it takes until the falling edge, giving a category to this time later on. If it doesn't determine the period between rising and falling edge before the timeout runs out, it aborts the execution of the while loop. This VI execution is setup like this:
    That being said, let's go to the problem.
    Assuming there is nothing using the AE but one instance of the bitDefiner, it won't get the rising edge, due to the fact the signal is not being generated, resulting in a timeout. The return value on the diff indicator should be next to the one defined to timeout(image below)
    However, when the subvi concludes its execution, the diff indicator shows 54ms intead of 15ms; so I concluded that the AE is taking to long to process the call. Besides that, I'm quite positive that there is only one thread accessing the AE.
    After this result, I ran the other instances of the bitDefiner and after the 5th one got activated, the diff went to the expected 15 ms (I'm still thinking how to show that on picture).
    I tried highlighting the execution, but it didn't show me anything unsual. The call chain just present that the caller is the bitdefiner VI as expected.
    Any thoughts on that?

  • Functional global variable question

    Hello,
    I fully understand how a functional global variable (FGV) works and its purpose but I have one last question.
    How do I guarantee (or how is it guaranteed) that my sub-VI (the FGV one) is not re-entrant, in other words, how am I sure that when an instance of the FGV is running it does not loose the processor to others?  Is this an option that I can choose in a sub-VI or is it related to the while loop or case strucure that compose a FGV?
    Joao

    Hi Joao,
    For a little more background on configuring reentrancy and the options you have available if you do want to make a subVI reentrant:
    LabVIEW Help: Reentrancy: Allowing Simultaneous Calls to the Same SubVI
    http://zone.ni.com/reference/en-XX/help/371361K-01/lvconcepts/reentrancy/
    As Lynn said, all new SubVIs will be non-reentrant by default.
    Regards,
    Tom L.

  • BGP Multi-Instances

    Hi All
    The feature BGP Multi-Instances seems to be supported since XR 4.2.x on ASR9k. Unfortunatly there is no specific feature description included in the  configuration guides. Could anyone of the XR cracks help out with more specifics about this feature?
    cheers,
    michel

    Hi Michel,
    May be it is not ready yet?
    Here are some facts:
    Each BGP instance is a separate process.
    The BGP instances do not share any prefix table between them
    The BGP instances do not communicate with each other and do not set up peering with each other
    Only VPNv4/VPNv6/RT-Constrain address-families can be shared between more than one BGP instances. VPNv4/VPNv6  if shared across instance can not share any VRF tables
    All VRFs with extranet dependencies must be restricted to a single BGP instance. It will not be possible to import between instances.
    MDT SAFI, MVPN SAFI and MVPN-specific BGP knob should be configured on a single instance only. Users need to make sure that all multicast VRFs are configured on the same instance. This instance will communicate with multicast processes.
    IPv4 /IPv6 Unicast and corresponding IPv4/IPv6 Labeled-unicast should be configured on the same instance. It is possible to have IPv4 Unicast and IPv4 Labeled-unicast on one instance and IPv6 Unicast and IPv6 Labeled-Unicast on another instance
    All global peering addresses must be unique across instances.
    Each instance must be configured with an unique BGP router-id
    Current maximum number of recommended instances that can be placed on a single RP is limited to 2
    Config Example
    router bgp 3 instance vpn2
         bgp router-id 20.0.0.2
         address-family vpnv4 unicast
         neighbor 20.0.101.2
             remote-as 200
             address-family vpnv4 unicast
                 route-policy inbound in
                 route-policy outbound out
    router bgp 3 instance vpn1
         bgp router-id 20.0.0.1
         address-family vpnv4 unicast
         neighbor 20.0.101.1
             remote-as 200
             address-family vpnv4 unicast
                 route-policy inbound in
                 route-policy outbound out
    Regards,
    /A
    Please visit http://cisco.com/go/testdrive or contact your account rep to schedule nV tech demo.

  • Help with functional global

    Thsi is my first time experementing with functional globals
    Having been recomended to read this thread http://forums.ni.com/ni/board/message?board.id=170&message.id=240328&query.id=5387854#M240328 
    I have decided to start with just a functional global
    (I like that term better as a FG should be just that, a global variable, and not perform any actions beyond holding data)
     What I have is "VI-A" writing to the FG and "VI-B" reading the FG
    The problem I am having is: 
    I can open the FG-VI in "VI-A" and see it updating.
    If I open the FG-VI in "VI-B" the FG-VI is running but the controls and indicators are always in their default state and not being updated by VI-A
    I have checked and checked and checked to make sure there is only one instance of the FG-VI on my machine.
    I have even gone as far as dragging the FG-VI directly from the block diagram of "VI-A" to the block diagram of "VI-B"
    Solved!
    Go to Solution.

    GerdW wrote:
    Hi RTSLVU,
    also throwing together two small test VIs to get rid of all your HW accesses, to show the FGV is working...
    So maybe it wasn't a good idea to "I threw together the chg-cycle VI rather quickly, it's messy...". Remove the unwired default values and check again what's happening in your VIs!
    Yeah well I am not using that VI anymre anyway, besides it was a quick and dirty test that worked fine the day I needed it... The origonal chg-cycle had the comunication VI's built in it. I was just using it to learn the FG concept. The idea I had was VI-A would run and continusly update so you could see what the UUT was doing and VI-B could pull in the data it needs from the FG... Like I do with my measurement instrument (The Measurments global in teh chg-cycle vi)
    Anyway I changed the FG back to how I first made it (no unwired defaults), but it still does not work as expected. The read in VI-B is always empty
    Attachments:
    FG-1.png ‏46 KB
    FG-2.png ‏43 KB

  • RT executable causes functional global variable VIs to become non-reentrant

    Hi,
    I am having a small issue with functional global variables (Repositories). The attached VI is a sample functional global variable I created that stores double precision numeric values. The VI properties are set to normal execution. I use this VI to pass data between loops running in real time on a PXI platform. When running my application from the project explorer (not creating executable) the VI functions as it should and passes data between my loops with no issues. But when I create a real time executable of my application and run it on the PXI, it does not share data between instances of the VI. My work around this issue is to change the VI properties execution priority to Subroutine but it forces me to modify my VI slightly for this to work (I have to remove the property node). I am not sure why this is happing. I have seen some applications with this VI that appear to function normally in development and in executable with the VI properties execution priority set to Normal. Any comments or suggestions are welcomed.
    I am running LabVIEW 2009, PXI-8186, and Windows XP
    Thanks
    Attachments:
    RT Repository DBL Numeric Command Ver 2.ctl ‏5 KB
    RT Repository DBL Numeric Element Ver 2.ctl ‏5 KB
    RT Repository DBL Numeric Ver 2.vi ‏25 KB

    Many properties require the front panel to be loaded in memory; the property you're using, NumItems, appears to be one of them (look at the help, you'll see that it says "Loads the front panel into memory.")  However, VIs running in an executable on RT do not have front panels, so those property nodes will not work.  If you were to log the error out terminal from the property node in your executable, you should see that an error occurs.  As a result, you're getting a 0 value out of the property node, causing your VI to output unexpected results.
    My recommendation is that you replace the property node with the function GetNumericInfo found in vi.lib\utility\VariantDataType.  It has an output called EnumNames.  Take the size of the EnumNames array and use that in place of the output from the property node.  This will work on RT.
    Note that this has nothing to do with re-entrancy, and the key hint is that the VI works when you remove the property node.

  • Functional global reach

    Hi all.
    Have Main app and 4 sub-apps.  Each of the 4 sub-apps has functional global (or action engine) to which it writes and reads a cluster of app specific data.
    The idea was that using a functional global for each app then data could be passed between them all and the Main app.
    For example, I want to be able to drop the FG of sub-app1 on the BD of sub-app2 and read the cluster of data.  At the same time sub-app1 would be updating its FG on its own BD.
    This does not seem to be working.  For example the FG1 is being updated by sub-app1 BUT the instance of FG1 on the sub-app2 BD is empty.
    None of the FG's is reentrant; therefore there should only ever be one instance of each FG, correct?  There is only one(1) instance of each FG on disk.  Each sub-app and FG is located in a separate LV Project.
    Confused.
    Battler.
    Solved!
    Go to Solution.

    MarcoMauri wrote:
    I may be wrong but since the FG is running in different projects, i.e. different application instances, it cannot be used to exchange data.
    In any case that are other way to do this, for example DataSocket....
    Marco
    I believe you are correct.
    While both VIs are running in the two project go to the hiarchy screen and hit "ctrl-a" to show all.
    You will see that the two FG are running is unique contexts. So this is the equivelent of one app talking to anothe app on the same machine or across PCs, so Datasockets, TCP/IP, VI server...
    Ben
    Ben Rayner
    I am currently active on.. MainStream Preppers
    Rayner's Ridge is under construction

  • Multi-Instance BGP

    BGP Multi-instance was supposed to be released in XR 4.2, I could not find any mention of it in the Release notes for 4.2, 4.3, & 5.1?
    How do I find out if it was implemented and if so how to configure it, if not if it is still on the road map?
    Thanks,
    John

    Hello,
    It is in release note XR .4.2:
    http://www.cisco.com/en/US/docs/routers/asr9000/software/asr9k_r4.2/general/release/notes/reln_a9k_42.html
    And some writing on Cisco doc:
    http://www.cisco.com/en/US/docs/routers/crs/software/crs_r4.2/routing/configuration/guide/b_routing_cg42crs_chapter_01.html#concept_E6B1D3D6B8CA4742AED837B3A94E826F
    Below is the example what i did in my lab running 4.2.3:
    RP/0/RSP1/CPU0:ASR-9006-01#show run router bgp
    Fri Jan 31 21:05:02.170 UTC
    router bgp 1 instance IPV4
    bgp router-id 72.15.48.5
    bgp graceful-restart
    ibgp policy out enforce-modifications
    address-family ipv4 unicast
      redistribute connected
      allocate-label all
    address-family vpnv4 unicast
      retain route-target all
    neighbor 172.16.8.3
      remote-as 1
      update-source Loopback0
      address-family ipv4 labeled-unicast
       route-policy PASS in
       route-policy PASS out
    router bgp 1 instance IPV6
    bgp router-id 99.2.3.4
    address-family ipv6 unicast
      redistribute connected
    thanks,
    rivalino

  • How can I activate a functional global without displaying a LabVIEW VI ??

    Hello. I'm using Teststand and have been got stuck on a problem now.
    Whenever I communicate to a LabVIEW VI which is activated as a functional global,  I purposely displayed the LabVIEW VI on front pannel to make sure the data communication.
    However once I released the check mark 'Show VI front pannel when called' , the data transmission including receiving vanished. As a matter of fact, always the numeric data resturns ' 0 '.
    So the data communication must be transacted with a shift resgister function at each step in Teststand, so it always provides a command to the functional global VI for an e-num  item selector.
    Therefore it looks the shift register function doesn't work at the point anymore in the functional global VI.
    Otherwise as long as I suspend the VI as a display, checking on the box 'Show VI front pannel when called' , I exactly can make sure the data communication , receiving the command and returning the data.
    Have you heard that kind of unusal problem before?
    Do you think it happened due to data communication or just simply Teststand applicational error?
    If it has some useful information, I try to fix them. 
    Thank you.
    Noriyuki

    hirose wrote:
    Hello. I'm using Teststand and have been got stuck on a problem now.
    Whenever I communicate to a LabVIEW VI which is activated as a functional global,  I purposely displayed the LabVIEW VI on front pannel to make sure the data communication.
    However once I released the check mark 'Show VI front pannel when called' , the data transmission including receiving vanished. As a matter of fact, always the numeric data resturns ' 0 '.
    So the data communication must be transacted with a shift resgister function at each step in Teststand, so it always provides a command to the functional global VI for an e-num  item selector.
    Therefore it looks the shift register function doesn't work at the point anymore in the functional global VI.
    Otherwise as long as I suspend the VI as a display, checking on the box 'Show VI front pannel when called' , I exactly can make sure the data communication , receiving the command and returning the data.
    Have you heard that kind of unusal problem before?
    Do you think it happened due to data communication or just simply Teststand applicational error?
    If it has some useful information, I try to fix them. 
    Thank you.
    Noriyuki
    I'm not sure about the current versions of TestStand but in previous versions you had the possibility to preload certain test steps or initializer VIs. TestStand made sure to keep them in memory for the entire duration of the particular test sequence. You create such an initializer VI and call your init method in there and mark that step as preload. On loading the sequence or initializing it your step gets called and stays in memory for the entire duration. I would be surprised if TestStand doesn't support this anymore.
    Rolf Kalbermatter
    Rolf Kalbermatter
    CIT Engineering Netherlands
    a division of Test & Measurement Solutions

  • Using functional global variables to transfer data between touch screen device and other targets

    Hi,
    We are currently developing a control system that will operate on a cRIO with a touch screen interface. During development we have been using functional global variables (FGVs) to handle most of the settings/data etc, however we have just realised that we may have an issue updating the data on the touch screen, and vice versa.
    Previously we have implemented similar programs using shared variables, however we were wondering if there is anyway to implement FGVs in a similar manner, whether it'd be a combination of FGVs and shared variables.
    Regards,
    Mike
    Software version: Labview 8.2.1

    See this thread on LAVA about sharing FGV's across projects. THis should be extendable to cross paltforms (I believe).
    You also may want to concider an upgrade to LV 8.5.1. We have found a number of performance related issues with LV 8.2.1 and RT.
    If you decide not to upgrade, just remeber what I wrote (above) when you have reason to question the performance.
    Ben
    Ben Rayner
    I am currently active on.. MainStream Preppers
    Rayner's Ridge is under construction

Maybe you are looking for

  • Error while updating a plan

    Hi, I have encountered an error while updating a plan. While i update the uplan , the grid gets filled but it throws a message stating "Maximum Number of Result Blocks has been reached" Maximum number of Result Blocks has been reached. [Oracle BAM En

  • When will camera raw 5.4 be available to PSE users?

    I can't download the camera raw 5.4 version and I believe it's because I'm running photoshop elements.  Has anyone heard or read anywhere when camera raw 5.4 will be available for PSE users?  I was able to download the DNG converter, but not camera r

  • HTML embeded video is not playing on DMP

    We had created asp.net website first page is outputing a simple grid control that is working perfectly fine. On second page we had embed a video that is playing inside the media player control through html. Second page is blank on DMP, please suggest

  • User-exit in me21n or me22n

    Hi gurus, i have a requirement to make ME21N/ME22N-> item-> Invoice's  tax code modifiable for certain conditions and add a checking for the jurisdiction code. how shall i do that? i tried looking for exits that the transaction passes through but MEP

  • Safari quit unexpectedly on open

    New HDD installed. Fresh install of Lion. Reinstalled when problem was found. Reinstalled latest Lion update. Did not fix. Here is the Problem Report: Process:         Safari [382] Path:            /Applications/Safari.app/Contents/MacOS/Safari Ident