02-15-2018 12:57 PM
BACKGROUND:
So I'm working on a LARGE project, and its getting to the point where it take ~40min to simply open the lvproj file. To give you an idea of the scale, the Actor Project has 1164 lvclass files, 152 lvlibs, and 4833 VIs. Needless to say, I've learned the hard way to keep on top of package dependencies. We have seen when there are circular dependencies LabVIEW will either fail to load the project, or crash. I'm having one dependency circle that I can't seem to break...
PROBLEM:
So two of the largest actors in the project somehow have a dependency on each other through the State Actor's "Entry.vi". When I right-click on Actor A's "Entry.vi", and select show Callers, in the list, it shows "Actor B.lvclass/Entry.vi". If I look in Actor B's "Entry.vi", it has the same issue with Actor A.
I've attached an example project that illustrates the problem. I also noticed that the inter-dependency didn't occur until AFTER I created a child of Actor A and an "Entry.vi" for it. (ie Actor A Sub 1) For example, I created Actor C, and no children of Actor C, and it doesn't include Actor A or B's Entry.vi's as callers.
Is this expected behavior of LabVIEW OOP, or is there something I'm doing wrong?
Actor A Callers
Actor B Callers
Actor C Callers
Actor Hierarchy
Solved! Go to Solution.
02-20-2018 03:54 PM
Just as an update, it appears that this isn't a real dependency. When I put Actor A into a project by itself, it doesn't include Actor B in the dependencies, so no cross linking.
08-06-2019 10:56 AM
Did you manage to solve your project's high loading time?