0
ScheduledExecutorService
用於bean構造函數,它應該在spring啓動時運行。junit spring引導ScheduledExecutorService計劃不運行
@RestController
public class TestController {
ScheduledExecutorService service = Executors.newScheduledThreadPool(1);
public TestController() {
service.schedule(() -> {
// task
}, 0, TimeUnit.SECONDS);
service.shutdown();
}
但是,有時候,任務永遠不會被調用。而在調試模式下,service.shutdown()
爲服務爲:
active threads = 1, queued tasks = 0, completed tasks = 0
雖然這不會發生的事情。當它運行,因爲我認爲它應該在同一行的服務對象既提供了排隊的任務或完成的任務1. 這JUnit測試期間只發生,
@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest()
@AutoConfigureMockMvc
public class ScheduledExecutorServiceTest {
@Test
public void test() {
}
}
我不認爲關機會導致問題。因爲斷點是在它之前設置的。 – Tiina