TestStand new Thread VS LabVIEW 'Call & Forget' an asynchronous call

Hello world

Here is an example from the site ni.com showing how to use LabVIEW to validate a notifier TestStand.  I changed the example to adapt to the situation, I need to use it.  I have an example that works very well (when I use a new thread TestStand to start the notifier VI) and an example that does not work (when I use an asynchronous call to LabVIEW 'Call & forget' to start the notifier VI).

I would like to understand why this does not work in the second case. The reason why I prefer the 2nd situation which currently does not work, it is that I try to eliminate all multiple threads in an outdated sequence, written by someone else a few years ago that I can't troublesoot it and update the code to make it work with the new reality of today.

Also, to my knowledge.  I do not understand why the second strategy does not work.  The notifier of forms reference is the same thing and hadled in the same way.  I have included my example with 2 situations files in the files of distinct sequences.

Thanks in advance to the person who will be able to enlight me.

Nien

Hi again,

It is true that I don't get any errors in the sons of the "bus" error when you try to set the alert of LabVIEW system but now I noticed what is wrong. In my example that does not work, the TestStand notifier reference is a valid reference inside the "call Notifier and Forget.vi", but it became an invalid Refnum once inside the 'Notifier.vi '.

You are right that it is not a question for the forum TestStand.  It is only associated with LabVIEW. If I run the VI "Call notifier And Forget" only using LabVIEW, I see that any reference (such as a queue reference) became an invalid Refnum once inside the 'Notifier.vi '.  It seems that it is not possible to run a valid french Refnum a node "Start Asynchronous Call.

I'll try to get comments in the forum of labview.  Sorry to be totally off topic here

Nien

Tags: NI Software

Similar Questions

  • Comparison of the data in the new thread in parallel with the hand

    I have a file of main sequence. Overall, I got a call from sequence that initializes an oscilloscope and returns to the hand. Next main action, I have the user turn on power supply and confirm with a popup message. My question is now, I need to create a new thread before action "light food" for the oscilloscope intercepts all overloads and continues to record. So if this is the case, what I'm trying to do is:

    Call sequence Initialize oscilloscope

    Call sequence oscilloscope Fetch

    Message Popup, power supply turns on, confirm with "OK".

    -Now, since the user disabled on food, I need compare all data, even while the user turns on the power and clicks "OK" and after.

    So, I need an oscilloscope running in parallel and by comparing data during execution of the main sequence. Any help would be appreciated.

    The type of call sequence step has an option of a sequence of sub in a new thread.

    Call sequence Initialize oscilloscope

    Sequence oscilloscope Fetch call (call in a new thread and it will acquire signals until it gets a signal to stop to the main following)

    Message Popup, power supply turns on, confirm with "OK".

    Delay if necessary

    Set the signal to stop the thread close.

    I hope this helps.

  • Problems during execution of a LabVIEW VI in a new thread under TestStand sequence and execution of the MainSequence in step by step mode

    Hello

    We want to run a VI in LabVIEW (LV2011) at the same time to the execution of a sequence of test of TestStand (TS2010). The VI should view the condition of the equipment, while the test sequence is written in TestStand. It would be a nice feature of debugging the TestStand sequence while watching the State of the material in the LabVIEW Panel, too.

    This is where it's our problem. Imagine that you have a MainSequence calling a subsequence in a new thread, which runs the LabVIEW VI. After the call, the MainSequence continues its progression, as it is configured to do this. But if we want to execute the MainSequence in step parallel execution of VI mode, we can do that. The controls for "Step Out" etc. are grey.

    I tried to build a very simple example to explain what I mean. It's just a sequence and a LabVIEW VI, no real functionality, just take as an example for our problem.

    Any tips? What we're doing wrong? Is there something that needs to be changed in the LabVIEW VI?

    Best regards

    Manual

    You should use the monitor of the termination and the ExternallySuspended APIs for the EIS to running asynchronously. There are screws of wrapper around these APIs in the LabVIEW TestStand palette.

    For more details see using the API for the following:

    Thread.ExternallySuspended

    Execution.InitTerminationMonitor

    Execution.GetTerminationMonitorStatus

    Unless I am struggling to understand what you're asking, if you are using these APIs, you should be able to make it work as you are eager to do things.

    -Doug

  • How to close a pop-up open running in the new thread in Teststand without manual intervention?

    Hello

    I'm keycycle in infinite while loop. There are two ways to break out of the loop

    1. click on the 'OK' button on the pop-up that says "complete the event. The pop up is running in a new thread.

    2 increase the value of the parameter "Reset_Count".

    If I choose the first way the sequence runs completely, but if I choose the second way then execution gets stuck in cleaning and waiting for me to click on the button 'OK' Popup.

    So my question is, is there any way by which I can close the popup without manual intervention?

    I have attached the seq, in case you want to see exactly what is happening.

    Thank you

    Hello.

    Yes, replace the TestStand popup a dialog box with custom of LabVIEW.  Here are my first thoughts on a simple method...

    a.) replace the TS popup with a LabVIEW dialog box.  The LabVIEW dialog box contains an OK button and a loop waiting for an LV notifier.  Simply wait for the notifier of LV (with a timeout of 100 ms) as well as the OK.button.

    Then when you get your external reset to end the test, create an another VI to SET the alert (with data as a Boolean value) system to stop the dialog box.

    Let me know if this can work.  I could put something togther for example, if any.

    Thank you
    PH

  • new thread status teststand

    Hello

    I use the synchronization of appointments of more then 1 test run in parallel, but I can't get the status of the son I ran.  I did a lack of strength in one of them, but I can't see the result.

    Once you get to the meeting toward the end of the wire, it is said that 'fact' for the result but I know that there is a failure since I insert a step with option 'force failed.

    Thank you

    You must have a waiting time for each thread you want to get the result of your MainSequence.  Select 'Thread' for the option, and the call of the sequence that you call a new thread.  # 2, do the same thing.  I would put at the end of the main group of your MainSequence (or anywhere else you want what they expect).

  • Error in the new thread should terminate execution

    Hello

    I have a labview VI (continuous while loop), getting initialized in the subsequence of Initialize section of the main sequence and running in the new thread. An error in the execution of this loop will stop execution of VI, pass the error to Teststand and out the thread. I need to put an end to the execution of the main sequence, when the error event in the new thread (passing initialization). Is it possible to do? I'm getting the popup of error Standard Teststand, when the error event, but when I choose to cancel/Abort, the execution of the main sequence doesn't stop and continues. What is the right way to handle errors for threads running in parallel?

    Thank you best regards &,.

    Juvin Ronny

    Some approaches.

    1) wait on the new thread periodically with a wait with a timeout step zero and "timeout causes error" box unchecked. If the thread is finished and has an error, the step of waiting spread the main thread of the error.

    (2) call the Execution.Terminate () or Execution.Abort () of cleaning up your sequence newthread.

    Hope this helps,

    -Doug

  • How can I include results of a subsequence, which takes place in a new thread in the test report from the main sequence

    Hello!

    I have ", working with the Version 4.2.1 of TestStand. I have a main sequence, which sous-séquences of different calkls. All these steps are reported correctly. One of the subsequences works like "new thread". How can I include his results in the common test report of the main sequence?

    I have variable markes of the subsequence as is required for the test report (it works OK if it's not a new thread). If the digital test, which is performed in this subsequence is correct, I get no results at all. If the digital test could not get a "message in red" who whithout having failed to test any reference to step somewhere in the report of the main sequence or values of vaiables that were not correct.

    I tried an option 'on the fly' in the Configuration of the report, but n ' got no useful result. What should I do?

    Best regards

    Hello Pericles,

    You can use a queue time for the results of the wire once it ends. Place a waiting time after the call to the thread in your MainSequence at the location where you want the results to add to the report (compared to other results). In the waiting step Setup tab, select wait: Thread the threaded sequence, and then select call to specify sequence call the radio button. You can also use an object reference if you need results if poster somewhere where elsewhere - you would just add an object reference to the appeal of sequence threaded in its thread settings dialog box.

    I hope this helps.

    -Jack

  • Step failed in New Thread does not display in the report

    Hello

    I call a sequence of sub in a 'new topic '.  A step inside this sequence of subroutine fails.

    The end result is the Test failed because it is supposed to be, but the step failed does not show.  (I show not only failed in the report).

    Can it be fixed?

    Thank you

    Rafi

    It is correct. If you look at the entry Point of the execution of the process template, you'll notice that once completed execution of the main sequence, the generation of reports and other things start.

    If spawn you a sequence in the new thread from the main sequence, MainSequence could finish before the subsequence ends its execution and the results of the sous-suite propagate to MainSequence. So as Ray mentioned, you can force the MainSequence expect the subsequence full run using a queue time.

    See attached screenshot and/or example:

  • Problems with the new version of LabVIEW font size...

    LabVIEW 2013, version 13.0 (64-bit), 15pt police Application.

    There it is again.  Load a new version of LabVIEW and either forget to change fonts by default or default in this case, font change does not block spread chart by default in (Tools > Options > environment > fonts).  Yes, you can use the (Drop Down Menu fonts > police dialog box > set and select the default Panel) and it will take.

    But now you have loaded your old code made too many changes to recharge under your chosen font settings, and the new 15pt font replaced many of your old 14pt font to the point that your code function entries that have been sized to 14pt are now misalligned / overlapping and it takes a long time to fix.

    Does anyone know how to reallocate the global level different fonts in your code without having to reset them manually one at a time?

    Thank you

    HLB

    Yet another reason to copy your labview.ini file and place it with every new installation...

  • Start a new Thread in the activate() method

    Hello

    When my application is started or resumed after a phone call etc... I would like to perform some tasks in the activate() method. First of all, I would like to start a new Thread to call web services a bit, and when it's done, I would like to update the user interface.

    I tried to do. I created a new class that extends the Thread in the run() method, I placed all the relevant web service calling and code in the method activate() my main thread that I have done:

    MyThread myThread = new MyThread();

    myThread.start ();

    But I noticed that nothing seems to be done. So I simplified my code by removing all web service of the run() method calls and replaced by a wait method (500), followed by a method call to update the user interface (in this case it creates just a new ButtonField, just for testing purposes).

    But ButtonField never gets created.

    The new thread doesn't seem to be from all.

    Any suggestions?

    Thank you very much.

    Have you tried setting stop and monitoring of execution points using println?

    First of all, is called same activate()?

    Secondly, run() is reached?

    When the thread does the work of the user interface, if you have that in a synchronized block try block invokeLater rather.

  • Prefer to get new threads to a new e-mail message in the Inbox

    My Inbox now displays an old Email previously sent with wires to listed. However, I don't see a new thread as a new separate Email as before, but only as a nother wire. He is easy to ignore these new messages. I'd rather get a new message, even if it's a wire, appear in my Inbox as a new message

    View (alt + V) menu > sort by > non threaded

  • trying ad new thread on sourceforge forums shareaza, firefox problem loading page gives, I completely turned on cookies

    When I try to post a new thread in any forum of shareaza at sourceforge.net, firefox 3.6.10 on xp + sp3 gives me

    "The page is not redirecting properly".

    Firefox has detected that the server redirects the request for this address in a way that will never end.

       *   This problem can sometimes be caused by disabling or refusing to accept cookies."
    

    I completely turned on cookies. The address referenced when I tried to send a https://sourceforge.net/apps/phpbb/shareaza/posting.php?mode=post & f = 2 & sid = 22ac067ee9e50a7115ac4f3b57e4b6ee
    After clicking on a new topic on
    https://sourceforge.NET/apps/phpBB/Shareaza/viewforum.php?f=2 & sid = 22ac067ee9e50a7115ac4f3b57e4b6ee

    See:

  • convert the VI from the old version to the new version of Labview

    Hello

    I have a huge VI which was created on the version 6 on an old PC with Windows 95, and I am required to transfer it on a new computer with LABVIEW 8.6 or similar running on XP. Could someone guide me in the process of transfer of the code please. Moreover, it would be useful if someone can give me a link to a Web page that shows how to do the same. If necessary I can post on this message VI.

    See you soon

    Hi epoch09,

    You should be able to open it without problem.

    http://zone.NI.com/DevZone/CDA/tut/p/ID/8387

    Mike

  • button new design in labview

    Hello

    I wonder if it is possible for the button new drawing in labview. in fact, I don't want to change the functionality of the button, but I want to have the new button with new graphics. for example, I have a button with a particular image at its Center is desired (as a uniqe object).

    concerning

    Herea video how to achieve this.

    Herea control that allows you to set the image.

    Herea set of defines custom buttons (look for packages of user interface tool).

    Tone

  • How to reply or start a new thread?

    Am connected, but can not find any "New message" button to be able to ask questions. What is needed other than the Member and need help? I posted more before there are two 2 years and the last in June. Seems there were a few changes I don't know and cannot circumvent this missing part for display.

    Robert is off, then I'll take it...

    You can not respond to the 'Search' page You will need to click on one of the threads highlighted blue,

    "RE: Dell Optiplex 960 TPM and Bitlocker issues."

    Will take you to the specific thread. From there, you can click the button answer.

    To start a new thread, go to the Board of Directors had need, such as general office equipment. On the right in the empty search bar, click new message.

Maybe you are looking for

  • Disconnect Ethernet cable internet on Macbook

    Just installed a Netgear AC1200 Wireless Modem Router. We have a PC, a Surface and a Macbook Pro. WiFi works well on all of these devices. Wired is very good with the PC, but when connected to a Mac to another room (by ethernet USB adapter), the inte

  • Satellite P30 (PSP30A-111004) - need drivers

    Hello I reformatted and reinstalled the operating system from scratch. I need the drivers for:Ethernet controllerMultimedia Audio ControllerPCI FLASH memoryModem PCISM Bus controllerVideo controller VGA What are the elements with the yellow question

  • Exchange services

    A few times when I use my e bike suddenly a pop message product which "Unfortunately Exchange Services stopped of ' how can I turn it off? Please help me...

  • Receive large messages that block y function Outbox.

    It takes hours to download a few pictures, a friend sent me. My send and receive features is blocked because of this. I've cleaned the disc in case I need more space, but it does not work. I want to stop these photos to be sent because it freezes my

  • Pavilion DV6000: Laptop display problem

    My laptop screen works not all Idiea before you take it to the store Model FF513EA number