2010-11-09 1 views
4

Il semble que je ne comprenne pas quelque chose de simple sur les tampons de protocole, mais c'est une question très importante pour moi et pour mon cas concret.Comment puis-je savoir quel message j'ai reçu en utilisant la bibliothèque de tampons de protocole?

En lisant la documentation sur les tampons de protocole je ne comprends pas comment on sait quel message vous devriez décoder du flux? Tous les exemples sur un message défini, mais si vous avez défini plusieurs messages complètement différents et que vous voulez envoyer ces messages entre 2 processus - comment savez-vous quel message vous venez de recevoir? Ou peut-être que les tampons de protocole n'essaient pas de résoudre ce problème et de laisser cette question pour un autre niveau d'abstraction?

Ou peut-être que je devrais emballer le message dans la structure comme:

message wrapper { 
    required string message_name = 1; 
    string packed_message = 2; 
} 

Et puis je décoder un message en 2 étapes: obtenir le message_name au début, puis de décoder un message réel emballé à la deuxième étape, devrait pas moi?

Répondre

Questions connexes