> I have a routine which writes IP messages over the period of tens of
> seconds based on data passed into it.
>
> I need to have this routine running independently an arbitrary number of
> times concurrently. The number of threads required is determined at
> run-time.
>
....
You probably want to look at the VI server. To respond to each request,
you will create a VI reference to the reentrant VI, set up the
parameters, and use the Run method setting the Wait until done to False.
You will probably also want the references in an array so that you can
Abort the VI if something seems wrong, you can poll the VI to see if it
is finished, or you can have the VI finish itself by removing its
reference from a protected array and Closing the reference to the
reentrant refer
ence.
Its also possible to do this by copying files on disk and
opening/running them using the server. This should only be necessary
when multiple panels need to be open, and obviously takes more time than
the reentrant reference technique.
Greg McKaskle