Skip to content

Instantly share code, notes, and snippets.

@recursivecodes
Created June 17, 2020 16:44
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save recursivecodes/86d15b8b4340549bbd7335a194aca5c3 to your computer and use it in GitHub Desktop.
Save recursivecodes/86d15b8b4340549bbd7335a194aca5c3 to your computer and use it in GitHub Desktop.
Main.java
public static void main(String[] args) throws IOException {
    Logger logger = LoggerFactory.getLogger(Main.class);
    int port = Integer.parseInt( System.getProperty("port", "30000") );
    socketServer = new ServerSocket(port);
    logger.info("Listening on localhost:{}...", port);
    Runtime.getRuntime().addShutdownHook(new Thread(() -> {
        logger.info("Server shutting down. Goodbye...");
        try {
            socketServer.close();
        }
        catch (IOException e) {
            e.printStackTrace();
        }
    }));
    //noinspection InfiniteLoopStatement
    while(true) {
        Socket socket = socketServer.accept();
        Runnable messageHandler = new MessageHandler(socket);
        new Thread(messageHandler).start();
    }
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment