This package installs AF 4.1 for LV 2011 into user.lib.
This is the same version of the AF that released with LV 2012 with one performance improvement and one new method ("Substitute Actor.vi"). It is fully backward compatible with version 4.0.
This version installs into user.lib. The LV 2012 version installs into vi.lib, as it is now a formal part of LabVIEW.
This is the MAIN FORK. That means this is the blessed, non-experimental, certified, real community version of the Actor Framework. Anything in MAIN FORK will become a part of LabVIEW the next time LabVIEW updates its shipping version of the Actor Framework. All future versions of the Actor Framework will support all the functionality of the MAIN FORK.
There will be multiple EXPERIMENTAL and multiple DEBUG forks of the AF posted for the community to use. EXPERIMENTAL FORKs contain features that may not be stable and may be rewritten many times before they become part of the MAIN FORK (if ever). DEBUG FORKs are instrumented versions of the AF to support debugging. DEBUG FORKs are supposed to always be some version of the MAIN FORK but with debugging capabilities.
Is this an upgrade (i.e. a replacement) for 3.x or will it install into somewhere else in user.lib?
Since 4.x changed the API, does that mean If I have apps that use 3.x and I install this, I will have to fix those to conform to the new API?
Appears to be a replacement (i.e. installs in the current directory). If you have been using 3.x, prepare for some rework.
For details about the rework that you have to do, see this thread:
v4.1.0.29 installs to "<user.lib>\ActorFramework", but older packages install to "<user.lib>\Actor Framework". If you're upgrading from AF 3.x, you'll also need to rename the folder prior to installing the new package.
Upgrade Instructions from Older Versions
Here are instructions for upgrading by hand. Set aside 30-60 minutes to do follow these instructions and check for success. CHECK ALL YOUR PROJECTS INTO SOURCE CONTROL BEFORE STARTING. You'll be happy you did if anything goes wrong halfway through.
OLD NAME | NEW NAME |
Message Queue Pair.lvclass | Message Queue.lvclass |
Message Queue Pair.lvclass:Obtain Message Queue Pair.vi | Message Queue.lvclass:Obtain Message Queue.vi |
Message Queue Pair.lvclass:Read Receive Queue.vi | Message Queue.lvclass:Read Dequeuer.vi |
Message Queue Pair.lvclass:Read Send Queue.vi | Message Queue.lvclass:Read Enqueuer.vi |
Message Queue Pair.lvclass:Release Message Queue Pair.vi | Message Queue.lvclass:Release Message Queue.vi |
Send Queue.lvclass | Message Enqueuer.lvclass |
Receive Queue.lvclass | Message Dequeuer.lvclass |
Actor.lvclass:Get Queue For Sending To Self.vi | Actor.lvclass:Read Self Enqueuer.lvclass |
Actor.lvclass:Get Queue For Sending To Caller.vi | Actor.lvclass:Read Caller Enqueuer.lvclass |
LastAck.lvclass:Read error report.vi | LastAck.lvclass:Read Error Report.vi |
LastAck.lvclass:Read Caller-to-Actor Queue.vi | LastAck.lvclass:Read Caller-To-Actor Enqueuer.vi |
Notes on renaming .lvclass files (in bold):
Notes on upgrading from AF v3.0.7
Works like a charm. Thanks for these nice upgrade instructions.
Is there a later version for LV2011 which contains the Launch Nested Actor.vi and Launch Root Actor.VI?