spring用了@async自定义线程池,线程池使用callerrunpolicy,会怎样?
例如线程池定义100个task,用满了,根据策略,用回原调用线程来run(),这样会同步等吗?如果同步等,和async的目的冲突了?还是spring会发现@async,就不用线程池和自身线程了,另外起一个异步线程?
ps:如果拒绝策略是callerrunspolicy时,如果队列满了,线程已达到最大线程数,那么,如果在继续提交任务,就会使用拒绝策略,将新提交的任务,交给调用者线程或者说上层线程(没关闭的话)去执行。