Здравствуйте, artgonch, Вы писали:
Я сделал так(хотя некоторые критикуют такой подход):
DateTime dtStopWaiting = DateTime.Now.AddMinutes(1);
while ((handler.Available == 0) && ( dtStopWaiting.CompareTo(DateTime.Now) >= 0 ) )
{
Thread.Sleep(50);
}
int bytesAvailable = handler.Available;
while (bytesAvailable > 0)
{
byte[] bytes = new byte[1024];
int bytesRec = handler.Receive(bytes);
bytesAvailable -= bytesRec;
data += Encoding.UTF8.GetString(bytes,0,bytesRec);
}
myLog.WriteEntry( String.Format("Received data: {0} , data), EventLogEntryType.Information);