sjb64
Roku Guru
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-08-2015
08:59 AM
Wait vs Sleep
This is all just experimenting, so am curious about it...
If I create a roVideoScreen page and run my event loop in a tight Port.GetMessage() loop, I can completely disable* HLS playback in the process, I assume by starving the CPU from being able to do anything else. Changing the GetMessage to a Wait makes everything run perfectly. This all seems perfectly sensible to me, and what I would have expected.
But, when I use the Port.GetMessage() loop, and put in a Sleep(1) call in the loop, my expectation would be that everything runs fine, as sleep does its pause "without wasting CPU cycles" per the docs. But the reality seems to be that the CPU is still starved and HLS playback is still completely disabled.
I would have guessed the script blocking done by Wait and the script blocking done by Sleep were similar, but they're it looks like not.
So my question is this - Is Sleep a CPU cycle eating pause (which seems contrary to the docs)?
* By disabled I mean it results in an "Unspecified or invalid track path/url" failure after a bit (on a perfectly good URL that works fine with Wait).
If I create a roVideoScreen page and run my event loop in a tight Port.GetMessage() loop, I can completely disable* HLS playback in the process, I assume by starving the CPU from being able to do anything else. Changing the GetMessage to a Wait makes everything run perfectly. This all seems perfectly sensible to me, and what I would have expected.
But, when I use the Port.GetMessage() loop, and put in a Sleep(1) call in the loop, my expectation would be that everything runs fine, as sleep does its pause "without wasting CPU cycles" per the docs. But the reality seems to be that the CPU is still starved and HLS playback is still completely disabled.
I would have guessed the script blocking done by Wait and the script blocking done by Sleep were similar, but they're it looks like not.
So my question is this - Is Sleep a CPU cycle eating pause (which seems contrary to the docs)?
* By disabled I mean it results in an "Unspecified or invalid track path/url" failure after a bit (on a perfectly good URL that works fine with Wait).
2 REPLIES 2
EnTerr
Roku Guru
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-08-2015
07:18 PM
Re: Wait vs Sleep
What device?
I suspect your mileage may vary, 3xxx vs 4xxx vs 5xxx/27xx.
I suspect your mileage may vary, 3xxx vs 4xxx vs 5xxx/27xx.
sjb64
Roku Guru
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-09-2015
10:14 AM
Re: Wait vs Sleep
4200X