java.net.ServerSocket.accept()方法的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(8.1k)|赞(0)|评价(0)|浏览(269)

本文整理了Java中java.net.ServerSocket.accept()方法的一些代码示例,展示了ServerSocket.accept()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ServerSocket.accept()方法的具体详情如下:
包路径:java.net.ServerSocket
类名称:ServerSocket
方法名:accept

ServerSocket.accept介绍

[英]Waits for an incoming request and blocks until the connection is opened. This method returns a socket object representing the just opened connection.
[中]等待传入请求并阻塞,直到连接打开。此方法返回一个表示刚刚打开的连接的套接字对象。

代码示例

代码示例来源:origin: stackoverflow.com

  1. ServerSocket serverSocket = new ServerSocket(4444);
  2. Socket clientSocket = serverSocket.accept();
  3. PrintWriter out = new PrintWriter(clientSocket.getOutputStream(), true);
  4. while (true) {
  5. out.println("output");
  6. if (out.checkError()) System.out.println("ERROR writing data to socket !!!");
  7. System.out.println(clientSocket.isConnected());
  8. System.out.println(clientSocket.getInputStream().read());
  9. // thread sleep ...
  10. // break condition , close sockets and the like ...
  11. }

代码示例来源:origin: stackoverflow.com

  1. public class ThreadedEchoServer {
  2. static final int PORT = 1978;
  3. public static void main(String args[]) {
  4. ServerSocket serverSocket = null;
  5. Socket socket = null;
  6. try {
  7. serverSocket = new ServerSocket(PORT);
  8. } catch (IOException e) {
  9. e.printStackTrace();
  10. }
  11. while (true) {
  12. try {
  13. socket = serverSocket.accept();
  14. } catch (IOException e) {
  15. System.out.println("I/O error: " + e);
  16. }
  17. // new threa for a client
  18. new EchoThread(socket).start();
  19. }
  20. }
  21. }

代码示例来源:origin: androidannotations/androidannotations

  1. /**
  2. * Main server loop.
  3. */
  4. @Override
  5. public void run() {
  6. try {
  7. mServer = new ServerSocket(mPort, VIEW_SERVER_MAX_CONNECTIONS, InetAddress.getLocalHost());
  8. } catch (Exception e) {
  9. Log.w(LOG_TAG, "Starting ServerSocket error: ", e);
  10. }
  11. while (mServer != null && Thread.currentThread() == mThread) {
  12. // Any uncaught exception will crash the system process
  13. try {
  14. Socket client = mServer.accept();
  15. if (mThreadPool != null) {
  16. mThreadPool.submit(new ViewServerWorker(client));
  17. } else {
  18. try {
  19. client.close();
  20. } catch (IOException e) {
  21. e.printStackTrace();
  22. }
  23. }
  24. } catch (Exception e) {
  25. Log.w(LOG_TAG, "Connection error: ", e);
  26. }
  27. }
  28. }

代码示例来源:origin: square/okio

  1. private void acceptSockets() {
  2. try {
  3. while (true) {
  4. final Socket from = serverSocket.accept();
  5. openSockets.add(from);
  6. executor.execute(() -> handleSocket(from));
  7. }
  8. } catch (IOException e) {
  9. System.out.println("shutting down: " + e);
  10. } finally {
  11. for (Socket socket : openSockets) {
  12. closeQuietly(socket);
  13. }
  14. }
  15. }

代码示例来源:origin: stackoverflow.com

  1. public class DoSomethingWithInput implements Runnable {
  2. private final Socket clientSocket; //initialize in const'r
  3. public void run() {
  4. BufferedReader in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
  5. String nextline;
  6. while ((nextline = in.readLine())!=null) {
  7. System.out.println(nextline);
  8. } //... close socket, etc.
  9. }
  10. }
  11. //...
  12. ServerSocket serverSocket = null;
  13. serverSocket = new ServerSocket(5432);
  14. for (;;) {
  15. Socket clientSocket = null;
  16. clientSocket = serverSocket.accept();
  17. //delegate to new thread
  18. new Thread(new DoSomethingWithInput(clientSocket)).start();
  19. } //...

代码示例来源:origin: stackoverflow.com

  1. public class MyServer {
  2. public static final int PORT = 12345;
  3. public static void main(String[] args) throws IOException, InterruptedException {
  4. ServerSocket ss = ServerSocketFactory.getDefault().createServerSocket(PORT);
  5. Socket s = ss.accept();
  6. Thread.sleep(5000);
  7. ss.close();
  8. s.close();
  9. }
  10. }
  11. public class MyClient {
  12. public static void main(String[] args) throws IOException, InterruptedException {
  13. Socket s = SocketFactory.getDefault().createSocket("localhost", MyServer.PORT);
  14. System.out.println(" connected: " + s.isConnected());
  15. Thread.sleep(10000);
  16. System.out.println(" connected: " + s.isConnected());
  17. }
  18. }

代码示例来源:origin: libgdx/libgdx

  1. if (listener != null) listener.onDisconnected();
  2. System.out.println("listening, port " + port);
  3. Socket socket = null;
  4. socket = serverSocket.accept();
  5. socket.setTcpNoDelay(true);
  6. socket.setSoTimeout(3000);
  7. if (listener != null) listener.onConnected();
  8. DataInputStream in = new DataInputStream(socket.getInputStream());
  9. multiTouch = in.readBoolean();
  10. while (true) {

代码示例来源:origin: apache/flink

  1. @Override
  2. public Void call() throws Exception {
  3. Socket socket = serverSocket[0].accept();
  4. BufferedReader reader = new BufferedReader(new InputStreamReader(
  5. socket.getInputStream()));
  6. String value = reader.readLine();
  7. assertEquals("0", value);
  8. socket.close();
  9. return null;
  10. }
  11. };

代码示例来源:origin: Netflix/servo

  1. @Override
  2. public void run() {
  3. while (running) {
  4. try {
  5. s = acceptor.accept();
  6. synchronized (this) {
  7. connected = true;
  8. notify();
  9. }
  10. BufferedReader stream = new BufferedReader(
  11. new InputStreamReader(s.getInputStream(), "UTF-8"));
  12. while (running) {
  13. String line = stream.readLine();
  14. synchronized (this) {
  15. lines[linesWritten++ % lines.length] = line;
  16. notify();
  17. }
  18. }
  19. } catch (IOException e) {
  20. synchronized (this) {
  21. connected = false;
  22. linesWritten = 0;
  23. linesRead = 0;
  24. notify();
  25. }
  26. }
  27. }
  28. }

代码示例来源:origin: apache/flink

  1. public boolean preparePlanMode() throws IOException {
  2. try {
  3. process.getOutputStream().write((server.getLocalPort() + "\n").getBytes(ConfigConstants.DEFAULT_CHARSET));
  4. process.getOutputStream().flush();
  5. } catch (IOException ignored) {
  6. // the python process most likely shutdown in the meantime
  7. return false;
  8. }
  9. while (true) {
  10. try {
  11. socket = server.accept();
  12. sender = new PythonPlanSender(socket.getOutputStream());
  13. receiver = new PythonPlanReceiver(socket.getInputStream());
  14. return true;
  15. } catch (SocketTimeoutException ignored) {
  16. switch(checkPythonProcessHealth()) {
  17. case RUNNING:
  18. continue;
  19. case STOPPED:
  20. return false;
  21. case FAILED:
  22. throw new RuntimeException("Plan file caused an error. Check log-files for details.");
  23. }
  24. }
  25. }
  26. }

代码示例来源:origin: plantuml/plantuml

  1. public static void main(String args[]) throws Exception {
  2. final ServerSocket server = new ServerSocket(4242);
  3. while (true) {
  4. final Socket socket = server.accept();
  5. new AcceptTelnetClient(socket);
  6. }
  7. }

代码示例来源:origin: org.apache.logging.log4j/log4j-core

  1. @Override
  2. public InputStream call() throws Exception {
  3. server = new ServerSocket(SOCKET_PORT);
  4. client = server.accept();
  5. return client.getInputStream();
  6. }

代码示例来源:origin: log4j/log4j

  1. while(!serverSocket.isClosed()) {
  2. try {
  3. Socket newClient = serverSocket.accept();
  4. PrintWriter pw = new PrintWriter(newClient.getOutputStream());
  5. if(connections.size() < MAX_CONNECTIONS) {
  6. synchronized(this) {
  7. pw.print("Too many connections.\r\n");
  8. pw.flush();
  9. newClient.close();

代码示例来源:origin: apache/flink

  1. private T readNextFromStream() throws Exception {
  2. try {
  3. if (inStream == null) {
  4. connectedSocket = socket.accept();
  5. inStream = new DataInputViewStreamWrapper(connectedSocket.getInputStream());
  6. }
  7. return serializer.deserialize(inStream);
  8. }
  9. catch (EOFException e) {
  10. try {
  11. connectedSocket.close();
  12. } catch (Throwable ignored) {}
  13. try {
  14. socket.close();
  15. } catch (Throwable ignored) {}
  16. return null;
  17. }
  18. catch (Exception e) {
  19. if (error == null) {
  20. throw e;
  21. }
  22. else {
  23. // throw the root cause error
  24. throw new Exception("Receiving stream failed: " + error.getMessage(), error);
  25. }
  26. }
  27. }

代码示例来源:origin: org.apache.logging.log4j/log4j-core

  1. @Override
  2. public InputStream call() throws Exception {
  3. client = server.accept();
  4. return client.getInputStream();
  5. }

代码示例来源:origin: apache/flink

  1. @Override
  2. public void run() {
  3. try {
  4. try (Socket socket = serverSocket.accept();
  5. PrintWriter writer = new PrintWriter(socket.getOutputStream(), true)) {
  6. writer.println(WordCountData.TEXT);
  7. }
  8. }
  9. catch (Throwable t) {
  10. this.error = t;
  11. }
  12. }

代码示例来源:origin: stackoverflow.com

  1. String msg_received;
  2. ServerSocket socket = new ServerSocket(1755);
  3. Socket clientSocket = socket.accept(); //This is blocking. It will wait.
  4. DataInputStream DIS = new DataInputStream(clientSocket.getInputStream());
  5. msg_received = DIS.readUTF();
  6. clientSocket.close();
  7. socket.close();

代码示例来源:origin: plantuml/plantuml

  1. public void go() throws IOException {
  2. final ServerSocket s = new ServerSocket(listenPort);
  3. final ExecutorService exe = Executors.newCachedThreadPool();
  4. while (true) {
  5. final Socket incoming = s.accept();
  6. ip = incoming.getLocalAddress().getHostAddress();
  7. System.out.println("New Client Connected from " + incoming.getInetAddress().getHostName() + "... ");
  8. exe.submit(new FtpLoop(incoming, this));
  9. }
  10. }

代码示例来源:origin: redisson/redisson

  1. /**
  2. * Begins the HTTP service.
  3. */
  4. public void run() {
  5. System.err.println("ready to service...");
  6. for (;;)
  7. try {
  8. ServiceThread th = new ServiceThread(this, socket.accept());
  9. th.start();
  10. }
  11. catch (IOException e) {
  12. logging(e.toString());
  13. }
  14. }

代码示例来源:origin: libgdx/libgdx

  1. if (listener != null) listener.onDisconnected();
  2. System.out.println("listening, port " + port);
  3. Socket socket = null;
  4. socket = serverSocket.accept();
  5. socket.setTcpNoDelay(true);
  6. socket.setSoTimeout(3000);
  7. if (listener != null) listener.onConnected();
  8. DataInputStream in = new DataInputStream(socket.getInputStream());
  9. multiTouch = in.readBoolean();
  10. while (true) {

相关文章