Can't you create and register a user event (or multiple user events) in the main VI and pass the appropriate user event reference to each subVI as it is launched? Each subVI then generates the appropriate user event at the appropriate time and the event structure in the main VI responds.
One reason queues *may* be a better solution.
If you are only using one event loop, then messages from the sub-vi's will reduce UI response time (when the handler is processing a sub-vi event, it is obviously not handling ui events). Of course, this is easily solved by making two event handler loops, but now you may as well implement it with queues because they are, imho, easier to manage (via naming them).
>>Dynamic event registration, as far as I understand, has to be performed out of the main Vi while loop, so that I would have to launch all Children at once and keep them in memory.
Not necessary. You could generate all of your dynamic event references in the main VI, store them, and then when you call the dynamic vi's you would pass them the references they need (using the set control value method if you are using the run method to launch them). But this is pretty complex and involves having a bunch of strictly typed event refs everywhere (something I personally do not like about the dynamic events).
Its true the queues or dynamic events will both work, but in my experience, the queues have turned out to be much easier to maintain.
George Gatling Applied Technology Division, SFA Inc. Space Physics Simulation Chamber US Naval Research Laboratory 202-404-5405 (phone) 202-767-3553 (fax)
As you know, these are open forums, you're able to come and listen to what I have to say.
-- George W. Bush, press conference, October 28, 2003
