Я отправляю и получаю сообщения с сервера unix, все в порядке и работает как положено ... за исключением случаев, когда я не получаю ответ от сервера, я могу подтвердить, что сервер получил мое сообщение, но для любого причина их конец они не отвечают. Я использую приведенный ниже код при чтении, он попадает в numberOfBytesRead = и зависает мое приложение.
If serverStream.CanRead Then
Dim myReadBuffer As Byte() = New Byte(1024) {}
Dim myCompleteMessage As StringBuilder = New StringBuilder()
Dim numberOfBytesRead As Integer = 0
Do
numberOfBytesRead = serverStream.Read(myReadBuffer, 0, myReadBuffer.Length)
If My.Settings.initCompassLive Then
myCompleteMessage.AppendFormat("{0}", Encoding.ASCII.GetString(myReadBuffer, 0, numberOfBytesRead))
Else
myCompleteMessage.AppendFormat("{0}", Encoding.ASCII.GetString(myReadBuffer, 2, numberOfBytesRead))
End If
Loop While serverStream.DataAvailable
' MsgBox("You received the following message : " + myCompleteMessage.ToString)
returndata = myCompleteMessage.ToString
Else
MsgBox("Aauth Request Failed: " & returndata)
Exit Sub
End If