Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 08/13/2010 in all areas

  1. [This message was also posted here on the ni.com forums.] All of the presentations for NI Week 2010 are available in the NIWeek 2010 Community. If you attended NI Week, you should already be a member of the community. If you did not attend NI Week, click on the link and request to join the community (you will have to create a user profile if you have never used the NI Community pages ever before). Approval to join the community may take a day or so. Once you are a member of the community, you can go here to get a full copy of the "LabVIEW Classes: The State of the Art" presentation that Mike Benza and I gave, along with all the VIs used during that presentation. I spent the bulk of that presentation discussing my new Actor Framework.Many users have spent time developing mechanisms for starting up multiple top-level VIs, establishing communications among those VIs and then tearing those VIs down when the app completes. It is easy to make a system that works sometimes. It is very hard to make one that always starts cleanly (so no VI misses early messages), avoids deadlocks during communication, and actually shuts down all running processes. Very hard. Multiple users have posted their attempts to me. At the same time, I've been looking at state machines, that very common design pattern for LV programmers, and lamenting that if I build one state machine for a project and then I need that same machine but with just one more frame of the case structure in another project, I have to copy all the code. How do I build a state machine that I can inherit from and extend? These twin challenges lead to the development of the Actor Framework. It incorporates ideas from several similar frameworks developed by users (both internal and external to NI), and adds a few extras to make it really robust. I found one CLA who lives near NI to test drive the framework in a real-world application. That work is still ongoing, but so far, the framework appears to function well, with good performance and no missing functionality. More importantly, it is easy to pick up and learn -- we decided that was important since so many of the macroscale frameworks that have appeared in the last five years have a steep learning curve. The framework should not be considered "finished". The presentation includes some notes about further refinements that we have planned, and I am open to further suggestions from the community. I would like to see this develop into something that we can share next NI Week as a polished set of VIs and classes that any of our users can pick up and run with. Please post any comments you have about the framework on the community page where the framework can be downloaded. That way any conversation about it is centralized instead of being spread across the forums, LAVA and the NI Community. PS: The Actor Framework is saved in LV 2009. You do not need LV 2010 to view and use the framework.
    1 point
  2. A bit updated version of that doesn't leave all these open references lying around: Br, Miha
    1 point
  3. The most simple way would probably make another consumer loop for showing your non-modal dialog boxes. Have another queue (or notifier) running around to tell the loop to run a certain window. You would be limited to one dialog box opening in the new consumer, but it is a quick and easy way to handle your issue.
    1 point
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.