‎01-02-2015 12:08 PM
Hi all,
I am trying to learn how to use the Actor Framework and I have bumped up against what seems like a simple problem. I have twice now somehow managed to destroy the stop actor vi. It looks like the VI thinks it is not in the actor class anymore, but if I open actor.lvclass it is there. The first time it happened I fixed it by removing the vi and rebuilding the whole thing. I then locked actor framework.lvlib thinking that I had unknowingly modified something to break it. An hour later I somehow managed to do the same thing. Can anyone tell me what I'm doing wrong?
I attached screen shots of the block diagram and the error window which I think show what is going on.
Thanks in advance for the help!
‎01-02-2015 01:17 PM
I encounter the same thing from time to time. No idea what causes it, but removing the Stop Core.vi from the class and re-adding it solves the problem.
‎01-02-2015 03:33 PM
Thanks for the reply. I'm glad I'm not the only one who has experienced this. Though it is a little disconcerting that this stuff is broken so easily.
‎01-02-2015 03:48 PM
I have had a similar issue in the past.
I haven't seen this in some time.
I think that the issue in my case may have been due to two different things.
1. Working with multiple projects open one for a cRIO target and one for a PC target and then having LabVIEW crash.
2. Using the AF message maker and having LabVIEW crash.
I think in those instances "Actor" is in a bit of a state of flux and the crash causes the disowning of the VI.
Casey
Phoenix, LLC
CLA, LabVIEW Champion
Check Out the Software Engineering Processes, Architecture, and Design track at NIWeek. 2018 I guarantee you will learn things you can use daily! I will be presenting!
‎01-05-2015 10:56 AM
I haven't seen this issue myself, but if it is caused by the message maker scripting utility, there's strong hope that it is addressed in LV 2015 as we hope to have a substantial rewrite of the message maker in that version. I say hope because I avoid promising future functionality for any specific release of LabVIEW... features have been known to slip or be pulled entirely once the beta users get ahold of them.
‎01-05-2015 11:13 AM
The message maker doesn't touch any part of actor.lvclass (that I recall, anyway), so I'm not sure what mechanism would throw Stop Core.vi out of the class.
In what versions of LabVIEW have you all seen this behavior, and can you be more specific about what you were doing when it happened? Is it always related to a LabVIEW crash? Do you all have multiple projects for multiple targets open at the same time?
‎01-05-2015 11:20 AM
I'm on LabVIEW 14.0. It is usually associated with a crash that follows creating a new class that inherits from Actor. For instance, I'll create a new class, set its inheritance, then create overrides for the core methods including Stop Core.vi. In the process of generating those overrides, I sometimes get a crash, and that is sometimes followed by Stop Core being lost by Actor.lvclass.
‎01-05-2015 11:32 AM
LabVIEW 2014
I do not believe LabVIEW crashed before I experienced the issue.
Unfortunately I haven't precisely identified what caused the issue, because it isn't immediately obvious that there is a problem. I can give a little more information which may be useful.
I was basically trying to recreate the Actor Framework Template Project that shipped with LabVIEW 2014 from scratch which has been helpful for me in wrapping my brain around the framework and how to use it. So I had the template project open, and then I created a new empty project and started building up the same objects. I didn't have multiple targets, but I did have two projects open which both used the AF library.
‎01-05-2015 11:45 AM
Regarding crashes; I make a habit out of filling out the crash report and sending it. I generally note what I was working on at the time (large AF project on a cRIO target and did XYZ).
After talking with niACS I thought of a couple of cases aside from message maker causing a crash that could be more likely casues. New VI for override that is a Dynamic Dispatch method of an actor may be my most likely case for cause a break in Actor Famework.lvlib.
Note, I have not seen the broken Actor Framework.lvlib issue in many months.
Phoenix, LLC
CLA, LabVIEW Champion
Check Out the Software Engineering Processes, Architecture, and Design track at NIWeek. 2018 I guarantee you will learn things you can use daily! I will be presenting!
‎01-05-2015 11:50 AM
That reminds me; I forgot to mention that I did create Stop Core for override in the project.