这是服务器代码的一部分。我遇到了问题,我无法打破这种无休止的循环。它是独立的类,用于处理客户端连接。如何连接无限量的客户端,但如果可能的话,按钮点击完成连接?
public class Handler implements Runnable {
public void run(){
....
//sockets
try{
....
//socket
while (true) {
client = server.accept();
count++;
Log.d("My Log", "Connected");
Log.d("My Log", "log" + count);
executor.execute(new Handler(client));
}
}
}
答案 0 :(得分:1)
而不是使用
while(true)
使用类似
的内容while(myConditional)
{
client = server.accept();
count++;
Log.d("My Log", "Connected");
Log.d("My Log", "log" + count);
executor.execute(new Handler(client));
}
其中myConditional是一个布尔值,您可以在UI线程中设置,例如
button.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
myConditional = false;
}
});