Ale*_*fer 0 spring asynchronous spring-boot
我有一个长期运行的服务方法,我从控制器的休息调用开始.
服务:
@Service
public class TestServiceImpl implements TestService {
@Override
public void doSomething() {
System.out.println("1: " + DateTime.now());
runLongTask();
System.out.println("2: " + DateTime.now());
}
@Async
private runLongTask() {
System.out.println("Test");
Thread.sleep(10000);
System.out.println("3: "+ DateTime.now());
}
}
Run Code Online (Sandbox Code Playgroud)
在我的Application.java中我有
private int poolSize = 10;
private int queueCapacity = 10;
@Bean(name="taskExecutor")
public TaskExecutor taskExecutor() {
ThreadPoolTaskExecutor taskExecutor = new ThreadPoolTaskExecutor();
taskExecutor.setMaxPoolSize(this.poolSize);
taskExecutor.setQueueCapacity(this.queueCapacity);
taskExecutor.afterPropertiesSet();
return new ThreadPoolTaskExecutor();
}
Run Code Online (Sandbox Code Playgroud)
当然,我的Application.java类中有@EnableAsync Annotation
所以我希望输出是这样的:
1: 2015-10-23 11:20:00
2: 2015-10-23 11:20:01
Test
3: 2015-10-23 11:20:11
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
679 次 |
| 最近记录: |