如何打破循环android服务器?

时间:2013-05-04 22:55:56

标签: android

这是服务器代码的一部分。我遇到了问题,我无法打破这种无休止的循环。它是独立的类,用于处理客户端连接。如何连接无限量的客户端,但如果可能的话,按钮点击完成连接?

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));
         }
    }
}   

1 个答案:

答案 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;
    }
});