首页 > 要闻 >

线程池参数(线程池)

发布时间:2023-09-20 13:41:50来源:

你们好,最近小艾特发现有诸多的小伙伴们对于线程池参数,线程池这个问题都颇为感兴趣的,今天小活为大家梳理了下,一起往下看看吧。

1、 首先,打开eclipse,创建一个好项目,并在一个类中创建一个新的main方法:

2、 方法一:在java中,我们可以通过它的接口执行器创建线程池。首先,我们通过newCachedThreadPool创建一个可缓存的线程池。

3、 理论上,可以通过这种方法创建无限线程:

4、 在上图中,我们定义了三个线程。运行后,我们输出了三个线程名称,并在线程池中成功创建了三个线程。

5、 方法二:通过newFixedThreadPool线程池创建固定长度。假设我们把固定长度固定为1,然后创建3个线程,那么他会等到第一个线程完成之后再创建第二个线程,所以可以发现,

6、 这三个线程的名字是相同的,因为在每个线程被创建之后,前一个线程已经完成执行。

7、 方法三:通过newScheduledThreadPool创建一个延时线程池,和上面的定长差不多,和运行结果没有区别:

8、 为了看出上述两种方法的区别,让我们打印方法3的时间,然后看看输出结果。此时,我们可以看到结果在每个线程之间延迟了定义的秒数:

9、 此外,还有另一种创建方法线程池,通过newSingleThreadExecutor创建一个线程池。这个和其他的最大区别线程池是不需要设置定长数量。

10、 它只允许一个线程同时运行,并且一个线程必须在下一个线程运行之前完成,如下所示:

以上就是线程池这篇文章的一些介绍,希望对大家有所帮助。

免责声明:本答案或内容为用户上传,不代表本网观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。 如遇侵权请及时联系本站删除。