Я делаю приложение в Android, может отправлять код символа на сервер C # при вводе пользователем на клавиатуре Android.
Это метод отправки на стороне Android:
public Boolean writeMessage(String message) {
try {
printWriter = new PrintWriter(socket.getOutputStream(), true);
printWriter.println(message);
return true;
} catch (Exception ex) {
Log.e(TAG,"write error: " +ex.getMessage());
return false;
}
}
И сервер прослушивает сообщения (C #):
Thread myThread = new Thread(new ThreadStart(ServeClient));
myThread.Start();
void ServeClient(){
StreamReader reader = new StreamReader(tcpClient.GetStream());
while (true)
{
try
{
String message = reader.ReadLine();
if (message != null)
{
Console.WriteLine(message);
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
}
Мой код работает, но когда пользовательский ввод быстрее, сервер задерживает чтение сообщения через 1,2 или 3 секунды (я тестировал метод получения символа при пользовательском вводе, он работает нормально, не задерживается)
Где моя проблема? Заранее спасибо!