首页 > 编程语言 > 详细

异步线程

时间:2020-05-07 18:54:20      阅读:43      评论:0      收藏:0      [点我收藏+]
    @Bean("taskModuleExecutor")
    Executor getCrawler1(){
        ThreadPoolTaskExecutor threadPoolTaskExecutor = new ThreadPoolTaskExecutor();
        threadPoolTaskExecutor.setCorePoolSize(3);
        threadPoolTaskExecutor.setMaxPoolSize(10);
        threadPoolTaskExecutor.setQueueCapacity(200);
        threadPoolTaskExecutor.setThreadNamePrefix("task-concurrent-work");
       // threadPoolTaskExecutor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());
        threadPoolTaskExecutor.initialize();
        return threadPoolTaskExecutor;
    }

@Async("taskModuleExecutor")
public void asyncTest(){
//加上Async表示基于主线程,新开一个线程。
单元测试中遇到主线程完成,但是子线程没有完成,会被中断,服务发布启动不会有这种情况,验证测试可以注释掉@Async("taskModuleExecutor"),看子线程是否会被中断
}

@EnableAsync
public class ServiceBootstrap(){
}

异步线程

原文:https://www.cnblogs.com/meadow/p/12844826.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!