LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Cloning Myself

So one instance only opens the port for listening, then the other connects? Do the two instances start in the right order? (server first). If both are the same, how do they know their role?

 

It is really difficult to make sense of the very sparse information you provide.

0 Kudos
Message 11 of 15
(597 Views)

"Cloning Myself" -

I like it, put this in the idea forums.

NI could claim instant "doubling of productivity for any engineer with a single mouse click" if self cloning is implemented.

 

Paul Falkenstein
Coleman Technologies Inc.
CLA, CPI, AIA-Vision
Labview 4.0- 2013, RT, Vision, FPGA
Message 12 of 15
(596 Views)

The order is self imposed. If the client attempts to connect before

the server starts listening, the user would get a standard

"server not available". This is SOP for anything IP.

When The server is up the circuit opens.

 

Paul, Thanks for your touch of humor. Having been milling

parts all day, A little giggle helps

 

Thanks.

0 Kudos
Message 13 of 15
(587 Views)

Well, back from shopwork. And now back to the real grind.

Running the code in a different manor produced a different result.

Here is what I had been doing.

    Once a single copy of the program worked, I

    Made a copy of "main.vi", producing "main copy.vi"

    I run the copy first and set it to run as the Server(listerner/reader)

    Then I run the "main.vi" code and set it to run as the client (writer/producer).

    The TCP/IP connections work fine. The "main.vi" code starts fine,

            but it acts like it is being restarted and stalls.

Tonight:

    All the program files are stored and run from a "Cloud Drive"

    I went to a second machine which has the same cloud mounted.

    I repeat the above process.

    Everything works wonderfully.

    Data is generated, captured and no funky behavior. Just what I wanted.

 

Sooooooooo........

Here is my thinking. The difference between the two tests are.

In the first.

    The source files are identical.

    The 2 Vi's are running under 1 copy of LV on 1 Machine.

In the Second

    The source files are identical.

    The "main.vi" run on it's copy of LV.

    The "main copy.vi" runs on its copy of LV on a deferrent machine.

 

If I where to guess, this has something to do with how the menu bar is handled

between the two cases. 

 

Thanks

 

 

 

 

 

 

0 Kudos
Message 14 of 15
(569 Views)

Could it be that you are calling some subVI in both modes and that subVI is not reentrant? This would cause the two instances of your application to block one another and could result in a dealock situation.

 

Also, in the future you may want to be more explicit with your descriptions of what you are doing and what is not working. Even better would be to post your code. Your descriptions are very terse and hard to understand what you experiencing. This makes it very difficult to give you any meaningful advice.



Mark Yedinak
Certified LabVIEW Architect
LabVIEW Champion

"Does anyone know where the love of God goes when the waves turn the minutes to hours?"
Wreck of the Edmund Fitzgerald - Gordon Lightfoot
Message 15 of 15
(566 Views)