Interceptando Ctrl C em um aplicativo Java CLI
Os programadores geralmente procuram interceptar o pressionamento de tecla Ctrl C em aplicativos CLI. Essa ação, normalmente associada ao encerramento do processo, pode ser valiosa na implementação do desligamento normal do aplicativo ou outro comportamento personalizado.
Solução multiplataforma
Infelizmente, encontrar uma solução padronizada solução em diferentes sistemas operacionais se mostra um desafio. No entanto, existem abordagens específicas de plataforma disponíveis:
Sistemas semelhantes a Unix:
Utilize SignalHandler para capturar o sinal SIGINT gerado por Ctrl C. Consulte o artigo vinculado ( como PDF) para obter mais informações.
Windows:
Empregue o Método Runtime.getRuntime().addShutdownHook(). Essa abordagem permite a execução de código personalizado antes que a JVM termine totalmente.
Usando readLine() do Console
Embora seja possível usar o método readLine() do Console para ler caracteres da entrada padrão, ele não tem a capacidade de interceptar Ctrl C. Considere usar uma biblioteca dedicada ou mecanismos dependentes do sistema de baixo nível para interceptar o pressionamento de tecla.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3