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

川渝建设集团网站wordpress与微信支付

川渝建设集团网站,wordpress与微信支付,app制作网站有哪些,wordpress禁用右键多线程 2 线程创建 【续】2.2 龟兔赛跑案例 首先需要一个赛道距离#xff0c;然后会距离终点越来越近判断比赛是否结束打印出胜利者龟兔赛跑开始故事中是乌龟获胜#xff0c;兔子需要睡觉#xff0c;所以要模拟兔子睡觉最终#xff0c;乌龟赢得比赛 package com.duo.de…多线程 2 线程创建 【续】2.2 龟兔赛跑案例 首先需要一个赛道距离然后会距离终点越来越近判断比赛是否结束打印出胜利者龟兔赛跑开始故事中是乌龟获胜兔子需要睡觉所以要模拟兔子睡觉最终乌龟赢得比赛 package com.duo.demo01;public class Race implements Runnable {private static String Winner; //胜利者Overridepublic void run() {for (int i 1; i 100; i) {boolean flag gameOver(i);if (flag) {break;}System.out.println(Thread.currentThread().getName() 跑了 i 步);}}//判断是否完成比赛private boolean gameOver(int steps) {if (Winner ! null) {return true;} {if (steps 100) {Winner Thread.currentThread().getName();System.out.println(Winner is Winner);return true;}}return false;}public static void main(String[] args) {Race race new Race();new Thread(race, 乌龟).start();new Thread(race, 兔子).start();} }运行结果 可以发现在未对兔子设置”睡觉“代码体时每次运行程序的结果符合前节所述即线程开启后不一定立即执行由CPU调度执行。添加如下代码 if (Thread.currentThread().getName().equals(兔子) i % 10 0) {try {Thread.sleep(50);} catch (InterruptedException e) {e.printStackTrace();}}运行结果 此后每次运行可以实现获胜者总是乌龟而兔子最终每次只跑了不到十步。 2.3 实现Callable接口 实现Callable接口需要返回值类型重写call方法需要抛出异常创建目标对象创建执行服务ExecutorService ser Executors.newFixedThreadPool();提交执行FutureBoolean result1 ser.submit(t1);获取结果boolean r1 result1.get();关闭服务ser.shutdownNow(); 可利用Callable改造之前的下载图片案例 package com.duo.demo02;import org.apache.commons.io.FileUtils;import java.io.File; import java.io.IOException; import java.net.URL; import java.util.concurrent.*;//线程创建方式三实现Callable接口 public class CallableTest implements CallableBoolean {private final String url; //网络图片地址private final String name; //下载保存的图片文件名public CallableTest(String url, String name) {//构造器传参this.url url;this.name name;}//下载图片线程的执行体Overridepublic Boolean call() {webDownLoader webDownLoader new webDownLoader();webDownLoader.downLoader(url, name);System.out.println(name 已下载完成);return true;}public static void main(String[] args) throws ExecutionException, InterruptedException {CallableTest t1 new CallableTest(https://img-blog.csdnimg.cn/a4bbb67340ce46a293b725868b3997b4.jpeg, 星空.jpg);CallableTest t2 new CallableTest(https://img-blog.csdnimg.cn/8dc90f70dca8437d868c655bcd0db7fc.jpeg, 黄昏.jpg);CallableTest t3 new CallableTest(https://img-blog.csdnimg.cn/cc83486a8a7b46a193dac95decc4ad31.jpeg, 旷野.jpg);//创建执行服务ExecutorService ser Executors.newFixedThreadPool(3);//提交执行FutureBoolean result1 ser.submit(t1);FutureBoolean result2 ser.submit(t2);FutureBoolean result3 ser.submit(t3);//获取并打印结果boolean r1 result1.get();boolean r2 result2.get();boolean r3 result3.get();System.out.println(r1);System.out.println(r2);System.out.println(r3);//关闭服务ser.shutdownNow();} }//下载器类 class webDownLoader {//下载方法public void downLoader(String url, String name) {try {FileUtils.copyURLToFile(new URL(url), new File(name));} catch (IOException e) {System.out.println(IO异常downLoader方法出现问题);}} }运行结果 可以发现这种实现方式可以定义返回值。 【小结】 使用实现Callable接口方法的好处 可以自行定义返回值可以抛出异常
http://www.sadfv.cn/news/34732/

相关文章:

  • 怎么做淘宝客手机网站推广岳阳网站建设哪里有
  • 山东咕果做网站怎么样购物网站模板免费
  • 做电影网站前途池州市建设管理处网站
  • 网站运营经理买手表网站
  • 网站建设费用怎么做分录wordpress 深色主题
  • 做百度网站排名软件企业网站报价模板
  • 网站是先备案 还是先做网站中国建筑工程网施工资料
  • 网站建设客户功能详细要求制作班徽的小程序
  • 网站内容很少如何做seoWordpress虚拟域名
  • 企业建设网站的好处有哪些免费的网站建设
  • 建网站都用什么字体wordpress 修改评论框
  • jsp网站开发什么框架室内设计联盟电脑版
  • 360广告联盟怎么做网站seochan是什么意思
  • 三明鑫龙建设工程网站网页制作设计模板
  • 人事处网站建设绩效目标概述怎么在网上卖东西到国外
  • dw做网站字体做多大项目网站有哪些
  • 安徽合肥做网站wordpress弹窗网页
  • 可以做彩页的网站美容加盟的网站建设
  • html做简单网站实例福州网页定制
  • 贵州省城乡和住房建设厅官方网站吾索源码网
  • 网站建设工作领导小组网站代码规范性
  • 美的集团网站建设建设网站外包
  • 福田莲花网站建设郑州专业做淘宝网站
  • 网站建设银行北京冬奥会纪念币发行时间企业官网建设
  • wordpress怎么建立空白文档河南seo优化
  • 鲜花网网站开发的意义网站开发技术服务协议
  • Joomla外贸网站模板wordpress好用么
  • 万润 企业网站建设大岭山网站仿做
  • 免费建站系统有哪些莱芜二手房出售信息最新房源
  • 产品营销型网站建设携程的网站建设项目规划书