1.建立專案
網上有很多,這裡省略。
2.匯入依賴
3.建立任務類org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter
org.projectlombok
lombok
true
org.springframework.boot
spring-boot-starter-test
test
@component在主類上使用@enablescheduling註解開啟對定時任務的支援,執行專案。public class scheduledservice ",system.currenttimemillis());
}@scheduled(fixedrate = 5000)
public void scheduled1() ", system.currenttimemillis());
}@scheduled(fixeddelay = 5000)
public void scheduled2() ",system.currenttimemillis());}}
這時看到三個定時任務都已經執行,並且使同乙個執行緒中序列執行,如果只有乙個定時任務,這樣做肯定沒問題,當定時任務增多,如果乙個任務卡死,其它任務將不能執行。
新建乙個asyncconfig類
@configuration@enableasync
public class asyncconfig
}
@configuration
:表明該類是乙個配置類
@enableasync
:開啟非同步事件的支援
然後在定時任務的類或者方法上新增@async 。重啟專案,每乙個任務都是在不同的執行緒中
springboot裡多執行緒執行某任務
剛剛接觸到這個領域的時候,我感覺無從下手。一邊查資料一邊寫 看執行日誌,碰到了一些坑,也學到了很多知識 不僅僅是併發程式設計方面的,也包括spring ioc和bean的知識。在這裡做個記錄吧!component public class implements override public voi...
SpringBoot設定多執行緒執行定時任務
設定定時任務為多執行緒 springboot定時任務預設都是使用單執行緒執行的,如果有多個定時任務同時執行的話,那麼就可能會導致很多任務無法按時準確執行。單執行緒定時任務示例 片 component public class tasktest catch exception e system.out...
Springboot 多執行緒 等待獲取執行結果
在日常的開發專案過程中,時常會有多執行緒的使用場景。最近開發的需求中也是如此,只不過這次需要開啟多執行緒去執行,最後要等所有執行緒結束統一獲取結果。所以在此整理一下 在springboot專案中開啟非同步執行緒需要滿足一下幾點 因為需要開啟多執行緒非同步執行並獲取其返回結果,所以選用future作為...