Ao escrever aplicativos de inicialização da primavera, você encontrará cenários, como: você precisa enviar algumas mensagens de texto, e -mails e outras operações regularmente, e também pode verificar e monitorar alguns sinalizadores, parâmetros, etc.
Crie uma tarefa cronometrada
É muito simples escrever uma tarefa cronometrada na inicialização da primavera. Os exemplos a seguir são usados para introduzir como criar uma tarefa cronometrada na inicialização da primavera, de modo a produzir o horário atual a cada 5 segundos.
Adicione a anotação @enablescheduling à classe principal de inicialização da primavera para permitir a configuração das tarefas de tempo
importar org.springframework.boot.springapplicationimport org.springframework.boot.autoconfigure.springbootapplicationimport org.springframework.scheduling.annotation.enablecheduling/*** Criado por http://quanke.name.name no 2018/1/12.
Crie uma classe de implementação de tarefas cronometrada
importar org.apache.commons.logging.logfactoryImport org.springframework.scheduling.annotation.scheduledimport org.springframework.stereotype.comnortimport java.text.simpledformatimport Java.util. 2018/1/12.*/@ComponentClass ScheduledTasks {val log = logFactory.getLog (ScheduledTasks :: Class.java) !! private val dateformat = SimpledateFormat ("hh: mm: ss")@agendado (fixo = "1000) relatório de funções, fúria () {Log.) $ {dateFormat.Format (DATE ())} ")}}Execute o programa e você poderá ver a seguinte saída no console. A tarefa de tempo começa a operar normalmente.
2018-01-21 23: 09: 01.112 Informações 23832-[Main] nqkotlin.chaper11_8_1.ApplicationKt: iniciou o ApplicationKt em 8.024 segundos (JVM em execução para 8.724)
2018-01-21 23: 09: 02.112 Informações 23832-[Pool-2-Thread-1] nqkchaper11_8_1.task.scheduledTasks: horário atual, 23:09:02
2018-01-21 23: 09: 03.042 Informações 23832-[Pool-2-Thread-1] nqkchaper11_8_1.task.scheduledTasks: horário atual, 23:09:03
2018-01-21 23: 09: 04.042 Informações 23832-[Pool-2-Thread-1] nqkchaper11_8_1.task.scheduledTasks: horário atual, 23:09:04
2018-01-21 23: 09: 05.042 Informações 23832-[Pool-2-Thread-1] nqkchaper11_8_1.task.scheduledTasks: horário atual, 23:09:05
@ScheduledDetails
No exemplo introdutório acima, a anotação @Scheduled (FILLRATE = 1000) é usada para definir as tarefas executadas a cada 1 segundo. O uso de @scheduled pode ser resumido das seguintes maneiras:
A anotação @Scheduled é thread única. Se vários threads forem necessários, adicione @async
O exposto acima é todo o conteúdo deste artigo. Espero que seja útil para o aprendizado de todos e espero que todos apoiem mais o wulin.com.