Je travaille avec StreamSockets dans une application Windows 8 Metro et je souhaite utiliser un DataReader pour lire les données entrantes. Existe-t-il un modèle ou un modèle spécifique que je devrais utiliser pour lire à partir du socket, ce qui me permettra de lire toutes les données disponibles dans le buffer réseau à tout moment?Lecture StreamSocket dans Metro
Actuellement, je comprends que j'ai besoin de faire des appels à DataReader.LoadAsync(), puis DataReader.Read ...(). Je veux être capable de lire tout ce qui est présent tampon réseau à tout moment. Mon problème se pose lorsque je veux détecter la fin du message entrant. Si j'essaie d'utiliser une boucle pour appeler continuellement LoadAsync, il bloquera quand il atteindra la fin du tampon réseau. Je sais dans .NET 4.0, il y a une classe NetworkStream qui fournit un champ DataAvailable qui me dit s'il y a des données présentes dans le tampon réseau, donc je peux continuer à boucler jusqu'à ce que cet indicateur soit faux. Est-il possible de faire quelque chose de similaire qui me permettra de consommer toutes les données disponibles dans le buffer réseau sans avoir à bloquer pendant longtemps?