Jump to content

smithd

Members
  • Content Count

    755
  • Joined

  • Last visited

  • Days Won

    42

smithd last won the day on May 21 2019

smithd had the most liked content!

Community Reputation

152

About smithd

  • Rank
    The 500 club

Profile Information

  • Gender
    Not Telling

LabVIEW Information

  • Version
    LabVIEW 2013
  • Since
    2011

Recent Profile Visitors

3,253 profile views
  1. oh trust me i've done that on machines which might be offline or I just dont feel like installing VIPM for this one package. Its generally just two locations (vilib and maybe a palette file) so its pretty easy.
  2. the run on launch thing was just an awful idea. it makes me want to install packages with 7zip. On my machine 2020 hasn't fixed the file association issue -- any computer i use which has had 2019 and now 2020 loses its .vip file association for some reason. thanks to michael for giving us all an out on this.
  3. could be valuable on rt if enforced. have to do this yourself with byte arrays and replace subset.
  4. For those of you not using any of their remote systems (rt pxi, crio, or slsc): silverlight is still alive and well technically extant in the WIF. you have to use internet explorer because no other browser supports the silverlight plugin, but thats still better in many cases than trying to find a remote system in MAX.
  5. A better way of looking at it might be that a variant is a specific data type. so if we assume c++ has some map<keyType, valueType> under the hood, the new labview map type exposes this directly and lets keyType and valueType be any labview type. the variant attribute system was specifically map<string, variant>. The api added some sugar on top so that if you specified a type, it performed variantToData(map.read(myStringKey), myDataType)...but it was still a map<string, variant>. If the content of your variant is a big array, this could potentially cause performance issues because of that variantToData. Vs 2019 where your map type might be map<string, lvArrayHandle> which doesnt need any of the weird memory allocation that happens if you call variantToData(myArrayInsideOfAVariant, dblArrayType). I dont know if this is precisely accurate, but thats what my general understanding was.
  6. Stopped using it from labview, mostly do my database interactions in python currently. Actually, I use python to generate a data structure which I then json over to labview using your jsontext
  7. I totally forgot about that, but I remember feeling the same way about...version 2? I figured since it used microsoft's ui stuff it would have some of the same features like automatic layouts at the minimum, and was disappointed. I know they've since worked on dynamic control instantiation, which is good, but if we're still stuck with finding window bounds and putting the top left corner of a control in right spot, whats even the point? Has anything like that crept into the more recent versions?
  8. I think you're thinking of MAX Sliding scale the project tree is not the worst thing.
  9. VSCode+gitlens has really nice git integration for text, if you don't have access (or dont want) full visual studio. I've been trying and trying to get away from sourcetree -- I've tried gitahead and git extensions. I like Git extensions best so far -- is not friendly, but it does a good job of exposing all the little random git things whereas a lot of tools (rightfully) try to make git look like its easy. I do want to try kraken now. Edit: do you know what gitkraken's license rules are? I thought the old rules were that its only free for open source, but I can't actually find any license terms. It says you can only access "public" repos, but when I just installed it I could use it just fine with a local-to-my-computer repo. So I'm confused.
  10. But just think about how fast you can get to your first measurement!!
  11. https://knowledge.ni.com/KnowledgeArticleDetails?id=kA00Z0000019ZhbSAE&l=en-US https://sine.ni.com/nips/cds/view/p/lang/en/nid/209022 All these do is call lvcompare, which you rightly described as not enough. I've not heard any rumor of the current version of labview ever supporting better tooling.
  12. yeah i mean i still can't get nxg to open on my machine without crashing, so I think we have a ways to go before it reaches the current 2019 standard of crashing only randomly in the middle of your work (real answer for me is that I use real-time, so 'next release' it might provide what I need but we shall see)
  13. You could see if dependencywalker (https://dependencywalker.com/) shows anything suspicious as a dependency of the DLL. You can also use resource monitor on windows to see if its opening handles or files at that time, but I dont know how to log it -- to the best of my knowledge it only works in real time. My other thought is antivirus. Have you tried running with it disabled?
  14. So I took a quick peek, nothing too detailed, but from what I saw there is pretty much no way this is unequivocally faster than the CVT or the tag bus. With the CVT it might be possible this approach is faster if you give it the worst possible load (10000000 simultaneous readers, each of which is reading a random, constantly changing name), but in any sane case you'd lookup a reference beforehand and then write to those, and the write time is bounded at basically the same performance as any reference-based data access. For tag bus...its literally just a cluster with an obscene number of different data types in big arrays. Data access is just indexing an array. There is no way in labview for data access to be faster than indexing an array. In contrast you are obtaining a queue by name which involves several locks, doing a lookup, and writing to the queue which requires another lock. The CVT only needs 1 lock and tag bus requires zero. Memory I'll give you. Its also worth you looking at this:
  15. You could also use a color box indicator behind a transparent control. Color box indicators dont need the UI thread to update, I dont think. to answer your question, I'm coming from an industrial control background so I'd say B. you dont need to change color faster than say 200-300 ms unless color is critical to your application, so a consistent polled update seems much easier to implement and is more stable of course
×
×
  • Create New...

Important Information

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