LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

High Resolution Polling Wait generates vi.lib Warning

Solved!
Go to solution

For a current Project (LabVIEW 2018), I wrote a few test simulations that generated simulated data at rates from 1 to 100 Hz.  For "flexibility", I used the (fairly new) High Resolution Polling Wait function, as it (a) can "sit" on an Error Wire, letting me put the "Wait" where I want it to be, (b) accepts time in (floating) seconds, a tad more natural than milliseconds, especially when converting from Samples/sec to seconds (a reciprocal is conceptually easier for my feeble brain than dividing into 1000 and wondering about remainders), and (c) it can work at shorter intervals than 1 msec.

 

I was debugging my Project, looking for "problems" and conflicts, and noticed in the Dependencies that I had the following entry: libsystem_kernel.dylib  [Warning: has been deleted, renamed, or moved on disk].

 

What is this? (I wondered).  Turns out it was "pointing" to the High Resolution Polling Wait function.  I've put my little test routine below -- just put this in a Project and inspect the Dependencies -- you'll see it, too.

 

Why is this being flagged?  As near as I can tell, nothing is really "broken".  Usually one wants to eliminate "obvious Errors" that the Project Explorer finds, but I have (a) no idea what this error means, nor (b) any clue how to "fix" it (and, indeed, I suspect it is not really "fixable").

 

Anyone have insight?Count to 100 in 5 secondsCount to 100 in 5 seconds

Bob Schor

 

0 Kudos
Message 1 of 5
(3,263 Views)
Solution
Accepted by topic author Bob_Schor

It looks like it's the Mac dependencies inside that VI. If the TARGET_TYPE==Mac conditional cases are removed, the project dependency disappears.




Certified LabVIEW Architect
Unless otherwise stated, all code snippets and examples provided
by me are "as is", and are free to use and modify without attribution.
Message 2 of 5
(3,234 Views)

Wow -- the Mac "promotes" a Dependency Error in the PC implementation.  That's weird -- I hope someone from NI R&D see this ...

 

Bob Schor

0 Kudos
Message 3 of 5
(3,182 Views)

I don't know of a way around this. The VI contains Mac-specific code in Conditional Disable Structures, so that will never affect how your code runs on Windows. But since it is a dependency that can be calculated by the project, it will show up under the Dependencies node.

 

I suppose you could post an idea on the Idea Exchange that the project dependencies will exclude code in disabled frames of conditional disable structures. But there may be good reasons for why it is done this way.

Message 4 of 5
(3,149 Views)

No, now that I know that LabVIEW R&D "knows" about this strange behavior, and now that I have more confidence that this is "a feature, not a bug", I can either (a) live with it and ignore it, (b) not use the High Resolution Polling Wait, or (c) since my PC will never become a Mac, go in and modify the function in the Library by removing the "offending" code.  For the time being, I'm choosing "Ignorance is Bliss", and going with (a).

 

Thanks for the insight and update.

 

Bob Schor

Message 5 of 5
(3,121 Views)