we recognize that there is a need to be able to set the priority of NetStream.send() for different use cases (example: bulk data transfer vs player position updates), and that the current situation is less than optimal when you have bulk data vs video.
the semantics of NetStream.send(), particularly that of message ordering, are incompatible with assigning different priorities to different sends() in the same NetStream. if, in the future, there was a way to set the priority of NetStream.send()s, it would have to be per NetStream to maintain the ordering semantic of each NetStream.
you can already (existing 10.1 API) vary the reliability of an individual .send() on a NetStream by simply changing the NetStream.dataReliable property right before your .send(). example:
function sendWithReliability(rel:Boolean, name:String, arg:Object):void
var oldRel:Boolean = ns.dataReliable;
ns.dataReliable = rel;
ns.dataReliable = oldRel;
> the semantics of NetStream.send(), particularly that of message ordering, are incompatible with assigning different priorities to different sends() in the same NetStream.
That is why I suggested handlerName specific priority control which, at a cost less than duplicate NetStream instances, can be implemented using handlerName specific queue to satisfy the ordering sematics.
Anyway, thanks for the reply. BTW, unless I am mistaken, I don't think NetStream.send() ordering semantics is explicitly stated in the documentation.
i need to take back what i said in my sendWithReliability() function above. it appears at least FP10.1 beta uses the "dataReliable" property at a different time than i thought, so changing it right back to the old value immediately after doing a .send() could mean that the data would actually be queued to RTMFP with the old reliability value, not the temporary one.
the upshot is that in 10.1 beta you can't reliably vary the reliability on a per-message basis in one NetStream. but you can make two NetStreams and give each one a different dataReliable setting.
this scenario is also being taken under advisement.
Got it. Thanks for the correction.