Announcement

Collapse
No announcement yet.

New exception on Ambient weather polling interval

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    #16
    Originally posted by Simplex Technology View Post

    Yeah keep me informed. I was actually doing a little checking earlier today and on the Windows box I was running on the CPU never went over ~9% during the PI refresh cycle against 2 different PWS's and OIP. I'm not doing a "normal" enumeration as I do the base enumeration and get ONLY my devices and then I use LINQ to query within that... I'm sure there's something that could be changed/optimized there always is.

    I think I need to do a more thorough run with Linux though as I'm thinking this has a lot to do with Mono (again).
    " I'm not doing a "normal" enumeration as I do the base enumeration and get ONLY my devices and then I use LINQ to query within that... I'm sure there's something that could be changed/optimized there always is."

    Its not a real enumerator, meaning it doesn't go back to HS to get each item. When you make the call HS has to bundle up every device on the system and send it over as one big blob to the local client, which then hands them back one by one. HS having to create the blob is what is so expensive and why caching your device refs in your .ini (or other data file) and falling back to the enumerator is so important...

    I am testing .499 right now, has some more locks around the enumeration creations. So far I think it has helped, but I am seeing a different error, can you tell me which API call is behind your FindDeviceById()? Oops, take that back, just got the same enumeration error..

    Click image for larger version

Name:	Screen Shot 2019-01-30 at 1.48.57 PM.png
Views:	21
Size:	151.0 KB
ID:	1280765

    Comment


      #17
      Originally posted by bsobel View Post

      " I'm not doing a "normal" enumeration as I do the base enumeration and get ONLY my devices and then I use LINQ to query within that... I'm sure there's something that could be changed/optimized there always is."

      Its not a real enumerator, meaning it doesn't go back to HS to get each item. When you make the call HS has to bundle up every device on the system and send it over as one big blob to the local client, which then hands them back one by one. HS having to create the blob is what is so expensive and why caching your device refs in your .ini (or other data file) and falling back to the enumerator is so important...

      I am testing .499 right now, has some more locks around the enumeration creations. So far I think it has helped, but I am seeing a different error, can you tell me which API call is behind your FindDeviceById()? Oops, take that back, just got the same enumeration error..

      Click image for larger version

Name:	Screen Shot 2019-01-30 at 1.48.57 PM.png
Views:	21
Size:	151.0 KB
ID:	1280765
      bsobel wrong plugin.... I think you want to be talking to spud ?

      Comment


        #18
        Yep, sorry, brain fart

        Comment

        Working...
        X