I think the main question I have that would be useful to answer for everybody is - json and xml feeds are downloaded using rourltransfer inside a task node. The task thread does that just fine.
Now once it downloads the data completely we throw the result to the "content" interface which is specified as a string type for the field in the task node xml which makes it accessible to the main thread. I've been doing it this way because of the note on thread rendevous between the main thread and the task thread being super slow, so by grabbing the text string in the main thread and parsing it there and then assigning or building the content to populate the screen with is much faster.
I did try running the parse inside the task thread and that part appears to be just as fast as running a single command for parse in the main thread.
However, if I want the task node itself to assign and build the content nodes once the string has been parsed for the data it needs to do that, how can we move, copy, reference, or otherwise get that data to the main render thread to populate the screen? Nodes created inside a task node are owned and controlled by that task node, we can't change the content field of the task node to be an object type to make it available to the main render thread? How else would we do it besides sending the string to the main thread to do that part?
You should avoid as many rendezvous operations as possible to ensure maximum performance of your application. It is better to build an entire tree of nodes or ContentNode nodes, then pass the tree to the render thread using one rendezvous, than to repeatedly pass each node in the tree as it is created.
In a task node thread, parsing and building a contentnode tree with 320 children takes minutes. In the render thread doing that takes seconds, therefor, real world tests indicate that the taskl node thread is super slow.
And then when the content node is done building it, how does the thread with the program execution get the content back to work with? [...] If I set the task node content field to type "node" it didn't appear to make the contentnode tree it built accessible to anything outside the task node. Is this a bug, or did I just miss something important I had to do to access it?