Я пишу rest-сервис и использую Spring Boot. Сервис в основном потоке получает запросы по REST, а в дополнительном проводит очистку файлов в нужное время на компьютере. В этом сервисе реализовал дополнительный поток Tread, который чистит директорию на компьютере. Реализовано это так:
код запуска потока и самого потока DirCleaner.java
Runnable task = () -> {
try {
while (true) {
тут код работы очистки и условия проверки
Thread.sleep(60000);
}
}
Thread.sleep(1000);
}
} catch (InterruptedException threadEx) {EventLogWriter.logEvent(EventStatus.ERROR, threadEx.getMessage()); }
catch (Exception ex) {
EventLogWriter.logEvent(EventStatus.ERROR, ex.getMessage());
}
};
Thread delThread = new Thread(task, "Поток удалающий файлы");
delThread.
Проблема в том, что на сервере Tomcat 8.5.11 этот поток не запускается, запускается только основной поток в котором работает @Controller, хотя локально при отладки или запуске в Intellij IDEA все работает нормально, и приложение работает в 2 потока.
Код Main.class
@SpringBootApplication
@EnableWebMvc
@EnableAutoConfiguration
@ComponentScan(value = "com.del.api")
public class SpringApplicationsDel extends SpringBootServletInitializer
implements WebApplicationInitializer {
public static void main(String []args){
ApplicationContext startContext = SpringApplication.run(SpringApplicationsDel.class,args);
DirCleaner dirCleaner = (DirCleaner) startContext.getBean("DirCleaner");
EventLogWriter.logEvent(EventStatus.WARN, "Приложение запущено");
dirCleaner.startRun();
}
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder){
EventLogWriter.logEvent(EventStatus.WARN, "Приложение запускается");
return builder.sources(SpringApplicationsDel.class);
}
}
В чем может быть проблема?
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Всем привет! Метод sumDigitsInNumber должен возвращать сумму цифр полученного числа (546), но вместо этого возвращает сумму кодов чисел из таблицы...
У меня есть examplexhtml, я не знаю как правильно его заполнить, так как NetBeans предлагает один вариант, а видео, где все работает, заполняют по-другому