c# Socket多次发送字符串(如何移除while(true)循环)
本文关键字:while true Socket 循环 何移 字符串 | 更新日期: 2023-09-27 18:02:23
我有一个c#服务器,它发送一个字符串到Android JAVA客户端。
我的Android代码已经接收了一次,但我想每秒多次发送这个字符串。
public void serverthread()
{
Thread serverthread = new Thread(server);
serverthread.Start();
}
public void server()
{
Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
socket.Bind(new IPEndPoint(IPAddress.Parse("192.168.2.5"),6000));
estado = 1;
socket.Listen(100);
Socket accept = socket.Accept();
while (true)
{
buffer = Encoding.Default.GetBytes("Hello World");
accept.Send(buffer, 0, buffer.Length, 0);
}
}
当我使用这个while(true)循环时,最终我的Android客户端崩溃了。我如何改进我的实施?
我完全不能理解你的问题是什么,但是如果你想防止你的客户端崩溃,你可能不得不让它使用你的数据。毕竟客户机比服务器慢。使用thread . sleep(时间);这样的
while (true)
{
buffer = Encoding.Default.GetBytes("Hello World");
accept.Send(buffer, 0, buffer.Length, 0);
Thread.Sleep(10);
}
使用定时器类代替,并在每个Elapsed
事件发送字符串到您的Android客户端