0

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

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

1 回答 1

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;
    }
});
于 2013-05-04T23:00:51.170 回答