当前位置: 首页 > news >正文

抚顺网站开发郑州网站建设居易国际

抚顺网站开发,郑州网站建设居易国际,做炫舞情侣头像动态图网站,成都网站的建设线程创建之源 OK#xff01;咱们闲话少叙#xff0c;直接进入正题#xff0c;回顾一下通过实现Runnable接口#xff0c;重写run方法创建线程的方式#xff0c;真的可以创建一个线程吗#xff1f;来看下面这段demo。 【代码示例1】 public class Test implements Runnab…线程创建之源 OK咱们闲话少叙直接进入正题回顾一下通过实现Runnable接口重写run方法创建线程的方式真的可以创建一个线程吗来看下面这段demo。 【代码示例1】 public class Test implements Runnable{public static void main(String[] args) {Test test new Test();test.run();}Overridepublic void run() {System.out.println(Thread.currentThread().getName():runnable线程);} } 输出 main:runnable线程 虽然这里我们实现了Runnable接口并重写了run方法但执行结果中输出的线程却是主线程这可我们调用普通的方法一样仍旧依靠的主线程驱动那怎么样创建一个线程呢 【代码示例2】 public class Test implements Runnable{public static void main(String[] args) {Test test new Test();new Thread(test).start();}Overridepublic void run() {System.out.println(Thread.currentThread().getName():runnable线程);} } 输出 Thread-0:runnable线程 这个demo中我们在外面套了一层Thread然后调用start方法最终输出的结果就是一个全新的Thread-0线程从而实现了线程的创建。 得出结论 我们继续换Callable、FutureTask、ThreadGroup、匿名内部类或Lambda表达式等类或接口发现均无法直接创建一个线程必须借助Thread的start() 而例如ExecutorService线程池、ForkJoin线程池、CompletableFuture类、Timer定时器类、parallelStream并行流等等如果有去看过它们源码的小伙伴应该清楚它们最终都依赖于Thread.start()方法创建线程。 因此我们在这里可以大胆的得出这样的一个结论 在Java中创建线程的方式只有一种通过Thread.start()调用 start()方法会启动一个线程并使线程进入就绪状态当分配到时间片后开始运行。 start() 会执行线程的相应准备工作然后自动执行 run() 方法的内容。 线程体与线程的区别 文章写到这里我们一起再来思考一个问题既然Runnable和Callable接口和Thread类一样需要重写他们提供的run()/call()方法又没有创建线程那它们究竟做了什么呢这个直接给出答案他们经过重写确定了线程体那线程体与线程又有何区别我们来看看文心一言怎么说。 总结一句话线程体是线程的核心部分负责执行线程的具体任务。 所以说无论是Thread中的run还是Runnable中的runCallable中的call方法内部所实现的都是线程需要执行的具体内容也就是线程体。 总结 基于以上的分析若我们在面试中再次遇到“Java线程有几种创建方式”的考题就可以这样回答啦 Java中创建线程的方式有很多种在《Java技术卷》和《Java编程思想》中提供了实现Runnable、Callable接口、继承Thread类、创建线程池这四种常见方式我们还可以通过ForkJoin线程池、CompletableFuture类、Timer定时器类、parallelStream并行流、匿名内部类或Lambda表达式等多种方式去实现但这些都不是真正意义上的创建线程严格意义上Java创建线程的方式只有一种那就是通过new Thread().start()创建Runnable、Callable接口只是重写了线程的线程体用来确定我们线程需要执行的内容。 文章转载自JavaBuild 原文链接https://www.cnblogs.com/JavaBuild/p/18060227 体验地址引迈 - JNPF快速开发平台_低代码开发平台_零代码开发平台_流程设计器_表单引擎_工作流引擎_软件架构
http://www.hkea.cn/news/14271526/

相关文章:

  • 天津做网站联系方式wordpress增加购物车
  • 政务公开 加强门户网站建设cn域名多少钱一年
  • 网站怎么做全屏的wordpress基础教程
  • 狠狠做狠狠干免费网站wordpress摘要 字数
  • 顺义做网站的厂家东莞常平怎么样
  • 百度网络推广seo域名综合查询
  • 公众号小程序怎么做佛山seo优化排名
  • 悬浮网站底部代码隐秘入口 黑料正能量
  • 五站合一网站建设渭南做网站
  • 房山营销型网站制作开发网站qq 微信分享怎么做的
  • 商业网站建设心得体会python建设电子商务网站
  • 手机网站建设 小程序昆明企业建站程序
  • 网站建设技术包括哪些龙岩网站建设行情
  • 番禺区手机版网站建设小学生摘抄新闻2024
  • 网站的规划与建设课程设计wordpress开启用户登录
  • 网站优化 保定东莞建设信息网
  • 网站建设培训教程广之旅自由通卡特约商家
  • 顺义企业建站餐饮业手机php网站
  • 多个网站 支付宝接口铜陵市网站建设
  • 怎样查看网站备案号网站域名怎么查询备案价格
  • 公章在线制作网站做不了山东济南做网站公司
  • 公司网站建设费放什么科目网站建设科技
  • 如何来建设网站如何进行网站的资源建设
  • 开鲁网站seo站长工具阿克苏网站设计
  • 电子商务网站建设实验报告心得1元建站
  • 四川做网站设计的公司深圳广告牌制作公司
  • 专做化妆品网站可以做软件的网站有哪些功能吗
  • 建设通网站是做什么的wordpress插件 登录
  • 建设工程公司网站瓯海住房与城乡建设局网站
  • 中国兰州网pc主站网站切图