SocketServer.Accept()影响?

时间:2014-03-28 14:08:50

标签: java android sockets

我在后台运行Android服务,它将使用以下代码:

while(true)
{
  ServerSocket server = new ServerSocket(1234);
  Socket server_socket = server.accept();
}

如果在客户端连接到服务之前停止在server.accept();,此循环是否会影响电池寿命?

我阅读了文档,但我无法找到accept();如何等待请求的明确答案。

如果这不是让Android设备等待套接字连接请求的最佳方法,那么有人可以为更好的设备提供帮助吗?

1 个答案:

答案 0 :(得分:2)

accept()是阻止通话 您可以通过设置http://download.java.net/jdk7/archive/b123/docs/api/java/net/ServerSocket.html#setSoTimeout(int)

来控制阻止的时长

在您的代码中,只要您接受Socket server_socket = server.accept();,就会将其丢弃。我希望事实并非如此,你实际上开始一个线程来处理连接