threadpoolexecutor.submit
时间: 2023-05-04 12:06:28 浏览: 132
线程池的submit和execute的区别.md
ThreadPoolExecutor.submit()是一个Java线程池中的方法,用于向线程池提交一个任务(Runnable或Callable),并返回Future对象以便于追踪任务进度或获取执行结果。该方法有多个重载,允许在提交任务时指定优先级、初始延迟、超时时间等参数。
使用ThreadPoolExecutor.submit()提交任务时,在任务执行队列已满或者线程池已经达到最大线程数的情况下,会根据指定的饱和策略(AbortPolicy、CallerRunsPolicy、DiscardOledestPolicy、DiscardPolicy)来处理任务。
通常情况下,使用ThreadPoolExecutor.submit()方法能够合理利用多核CPU资源,提高任务的执行效率,并且可以有效地控制并发任务的数量,避免资源浪费和系统负载过重的情况。
同时,在使用ThreadPoolExecutor.submit()方法时,需要注意任务的线程安全性,尽量避免多个任务同时访问同一份共享数据,从而避免出现线程安全问题。
阅读全文