栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Thread

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Thread

//关于多线程
1.直接继承Thread实现run方法达到目的,start(),与main()的主线程是同步进行执行,直接调用run方法和普通方法调用一样。
2.推荐使用Runnable接口的原因是java的单继承特性,但可以实现多接口,一个对象也可以被多个线程使用
3.对于Callable接口,相对应的实现call()方法,但需要值得注意的是套路大致一样,先从线程池分配好线程,在请求服务,获取服务,关闭服务。
ExecutorService executorService = Executors.newFixedThreadPool(3);//创建执行服务
//提交执行
Future submit = executorService.submit(threadDown);
Future submit1 = executorService.submit(threadDown1);
Future submit2 = executorService.submit(threadDown2);
//获取结果
Boolean aBoolean = submit.get();
Boolean aBoolean1 = submit1.get();
Boolean aBoolean2 = submit2.get();
executorService.shutdown();//在获取结果完毕之后一定要手动操作关闭
函数式接口:任何接口只对应唯一一个抽象方法,那么就是一个函数式接口,就可以用Lambda表达式来创建接口对象。
使用Lambda表达式可以去掉参数类型,要去掉都去掉,若含有多个参数,必须加上括号 花括号只有一条语句才能去掉
join方法实现线程插队,带来的问题也很明显,会造成线程阻塞。少使用
线程的优先级,默认是5,可以通过先设置线程的优先级,在跑程序,增大被调度的概率

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/697290.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号