2012-03-15 1 views
4

Я отправляю это, потому что я уже потратил впустую один день на поиск и программирование того, что действительно должно быть прост в настройке даже в метро.Простой пример C# Metro StreamSocket

Я ищу пример C# StreamSocket, который может подключаться к сокету, читать данные из сокета (я точно не знаю, когда данные прибудут, поэтому я всегда хочу слушать новые данные) и записывать данные к нему в произвольные времена. Это была легкая задача для выполнения в каждой языковой среде программирования (включая .NET), но я не могу сделать это в Metro без получения исключений (ObjectDisposedExceptions при попытке записи при одновременном ожидании входящих данных).

Приведенные примеры Metro слишком просты, поскольку они точно знают, когда следует опросить данные. Эта простая задача должна быть действительно возможна!

ответ

1

Если вы настроили DataReader на входящий StreamSocket, вы можете установить его InputStreamOptions в InputStreamOptions.Partial. Это позволит вам читать данные по мере их поступления и динамически решать, как их обрабатывать.

var dr = new DataReader(socket.InputStream); 
dr.InputStreamOptions = InputStreamOptions.Partial; 
var stringHeader = await dr.LoadAsync(512); 

Это сообщение также упоминает его http://babaandthepigman.wordpress.com/2012/04/07/streamsocket-example-c-metro/

 Смежные вопросы

  • Нет связанных вопросов^_^