Francis Brosnan Blazquez
francis at aspl.es
Wed Oct 24 09:42:28 CEST 2007
> Can someone explain what vortex_channel_set_serialize() is used for?
> Does it mean that the frames are received in the order they are sent?
This function allows to *ensure* that all calls to the frame received
handler are done in a way they are ordered. By calling to this function,
the vortex engine will ensure that all frames received will be
serialized without taking into consideration the thread planner.
Though all frames received are ordered, once they are processed by the
vortex reader, they are passed in to the second level handler (for the
frame received activation) by using threads.
Beyond this point, the thread planner could decide to stop a thread that
carries the RPY 1, and give priority to the thread carrying the RPY 2,
causing that the frame receiver to process the frame RPY 2 before its
In most cases this is not a problem because all replies are matched with
its corresponding MSG, but under some circumstances where replies have a
relation, like chunks of a file transferred, it is really required to
process chunks received in an strict order.
PS: I've updated the function documentation to include this explanation.
Francis Brosnan Blazquez <francis at aspl.es>
Advanced Software Production Line, S.L.
More information about the Vortex