Hi there,
So I am trying to post some analytics to a server inside a Task node during video/ad playback, but the Task never functions. The Roku system is aborting the thread. Error message below:
=================================================================Warnings occurred while spawning thread for Task component AnalyticsTask
spawning thread aborted because: channel exit or timeout waiting for render thread
=================================================================
So essentially the Task can't run because the render thread is currently doing too much work? My understanding is that as of firmware 7.5, all threads will wait indefinitely to complete. Quote from SDK docs below:
As of firmware version 7.5, thread rendezvous no longer timeout and will wait indefinitely. The rendezvous information below is only valid for firmware version 7.2 and older.
A Task node thread rendezvous can time out after a few seconds. This can happen if the render thread is very busy, maybe with other rendezvous operations. If a timeout occurs while getting a field, the response will be invalid, which may crash the application if the script is not prepared for the invalid response. During application development, you should check for these timeouts to increase the performance of your published application.
Also note that the render thread can time out while it is executing long linear searches, long iterative calculations, synchronous file accesses, and the like. These types of operations not only slow down the rendering of the UI, but can lead to a rendezvous timeout generating an invalid response, possibly crashing the application. Push computing not directly related to rendering or reacting to the UI into Task node threads.
If anyone has tips on how I can resolve this, I would greatly appreciate it.