今日浅浅一问:线程的创建方式?

刷面试题的时候遇到的值得记录的知识,想要深入了解的话建议再去CSDN巴拉巴拉,小生这篇文章仅供参考。

1.通过继承Thread类

        由于java中是单继承的方式,继承了Thread之后不能再去继承其他的类所以java提供了实现Runnable接口的方式。

2.通过实现Runnable接口

        实现接口的形式并无像继承一样的限制,所以在日常开发中更推荐使用。

3.实现Callable接口和Future接口

也可通过线程池的方式来创建线程。

4.newFixedThreadPool(固定大小线程池)

        线程池的大小固定,若有新任务提交,当线程池中有空闲线程时立即执行(并发);若没有空闲线程,则任务进入等待队列,直到有线程可用。

5.newCachedThreaPoll(可缓存线程池)

        线程数量不固定,如果有空闲的线程会被回收复用,如果没有空闲线程则创建新线程。

6.newSingleThreadExecutor(单线程线程池)

        只有一个线程执行任务,保证所有任务按照指定顺序依次执行(FIFO,LIFO,优先级)。

7.newScheduledThreadPoll(定时任务线程池)

        用于执行定时任务或周期性任务。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值