为什么Spring Boot会阻塞线程?

时间:2019-09-25 14:08:15

标签: java spring multithreading spring-boot sockets

我试图在Spring Boot中创建一个套接字线程。这是Spring Framework中的初始启动类。

@Component
public class InitialStartUp implements ApplicationListener<ContextRefreshedEvent> {

    private Logger logger = LoggerFactory.getLogger(getClass());


    @Override
    public void onApplicationEvent(ContextRefreshedEvent event) {

        // Start the Socket server
        try {
            ListenerSocket listenerSocket = new ListenerSocket();
            listenerSocket.run();
            logger.info("Starting listener socket server"); // <-- Never called
        } catch (Exception e) {
            logger.info(e.getMessage());
        }

    } 
}

但是问题是上面的logger.info方法将永远不会被调用。为什么? Spring Boot运行listenerSocket线程,但从不“退出”。为什么?

有什么办法可以使logger.info被调用?

0 个答案:

没有答案
相关问题