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

简单网上书店网站建设php博客为什么用wordpress

简单网上书店网站建设php,博客为什么用wordpress,网站开发公司 广告词,网站功能优化的方法java8 实例请移步https://www.cnblogs.com/ngLee/p/14021859.html进程与线程进程是所有线程的集合#xff0c;每一个线程是进程中的一条执行路径。多线程的创建方式#xff0c;继承Thread\实现Runable/*** 第一种创建线程的方式#xff0c;继承Thread*/public class MultiTh…java8 实例请移步https://www.cnblogs.com/ngLee/p/14021859.html进程与线程进程是所有线程的集合每一个线程是进程中的一条执行路径。多线程的创建方式继承Thread\实现Runable/*** 第一种创建线程的方式继承Thread*/public class MultiThread extends Thread{Overridepublic void run() {for (int i 0; i 10; i) {System.out.println(Thread.currentThread().getName().....i);}}}/*** 第二种实现Runnable接口更易于扩展。(多实现单继承)*/public class MultiThread2 implements Runnable {Overridepublic void run() {for (int i 0; i 10; i) {System.out.println(Thread.currentThread().getName()---i);}}}/*** 测试类*/public class TestThread {public static void main(String[] args) {System.out.println(Thread.currentThread().getName()---开始);//1.多线程创建 继承ThreadMultiThread multiThread new MultiThread();Thread thread new Thread(multiThread,线程继承Thread-1);Thread thread2 new Thread(multiThread,线程继承Thread-2);//2.启动多线程调用的是start(),而不是run()thread.start();thread2.start();//3.打印效果 当前线程线程1/**********************************///2 实现RunnableRunnable runnable new MultiThread2();Thread thread3 new Thread(runnable,线程实现Runnable-1);Thread thread4 new Thread(runnable,线程实现Runnable-2);thread3.start();thread4.start();//3 匿名内部类的方式Thread thread5 new Thread(new Runnable() {Overridepublic void run() {for (int i 0; i 3; i) {System.out.println(Thread.currentThread().getName()匿名内部类----i);}}});thread5.start();System.out.println(Thread.currentThread().getName()---结束);}}效果展示并不是按照自上而下的执行线程的几个状态新建状态当用new操作符创建一个线程时 例如new Thread(r)线程还没有开始运行此时线程处在新建状态。 当一个线程处于新生状态时程序还没有开始运行线程中的代码。就绪状态一个新创建的线程并不自动开始运行要执行线程必须调用线程的start()方法。当线程对象调用start()方法即启动了线程start()方法创建线程运行的系统资源并调度线程运行run()方法。当start()方法返回后线程就处于就绪状态。处于就绪状态的线程并不一定立即运行run()方法线程还必须同其他线程竞争CPU时间只有获得CPU时间才可以运行线程。因为在单CPU的计算机系统中不可能同时运行多个线程一个时刻仅有一个线程处于运行状态。因此此时可能有多个线程处于就绪状态。对多个处于就绪状态的线程是由Java运行时系统的线程调度程序(thread scheduler)来调度的。运行状态当线程获得CPU时间后它才进入运行状态真正开始执行run()方法。阻塞状态 线程运行过程中可能由于各种原因进入阻塞状态:1线程通过调用sleep方法进入睡眠状态2线程调用一个在I/O上被阻塞的操作即该操作在输入输出操作完成之前不会返回到它的调用者3线程试图得到一个锁而该锁正被其他线程持有4线程在等待某个触发条件死亡状态有两个原因会导致线程死亡1)run方法正常退出而自然死亡2)一个未捕获的异常终止了run方法而使线程猝死。为了确定线程在当前是否存活着(就是要么是可运行的要么是被阻塞了)需要使用isAlive方法。如果是可运行或被阻塞这个方法返回true 如果线程仍旧是new状态且不是可运行的 或者线程死亡了则返回false.简单需求目前蚂蚁课堂有10万个用户现在蚂蚁课堂需要做活动给每一个用户发送一条祝福短信/*** 提交实体*/public class UserThread extends Thread {private List uList;public UserThread(List uList){this.uList uList;}public List getuList() {return uList;}public void setuList(List uList) {this.uList uList;}Overridepublic void run() {uList.stream().forEach(userEntity - {System.out.println(threadName: Thread.currentThread().getName() -用户记录序号: userEntity.getUno() ---用户名称: userEntity.getUname());//短信发送接口});}}/*** 测试类*/public class TestThread {public static void main(String[] args) {//所有记录List list new ArrayList();for (int i 0; i 100; i) {UserEntity userEntity new UserEntity();userEntity.setUno(用户idi);userEntity.setUname(用户名字i);list.add(userEntity);}//将数据进行分割,每组四千这个每组数据量最好取配置使用高峰期调低保证不会超时int everyNum 20;List lists spiltList(list,everyNum);for (int i 0; i lists.size(); i) {Thread th new UserThread(lists.get(i));th.start();}//第二种java8 并行流,底层:ForkJoin --todo//使用并行流的时候最好不要修改数据如果需要map里的返回值则用Collectors进行收集不要foreach里用list.add()lists.parallelStream().forEach( lst - {lst.parallelStream().forEach( userEntity - {System.out.println(threadName: Thread.currentThread().getName() -用户记录序号: userEntity.getUno() ---用户名称: userEntity.getUname());});});}private static List spiltList(List list, int everyNum) {//总数据量int total list.size();//分组数量int group total%everyNum 0 ? total/everyNum : total/everyNum 1 ;//java8 streamList userList Stream.iterate(0, n-n1).limit(group).parallel().map(seed - {List list1 list.stream().skip(seed * everyNum).limit(everyNum).collect(Collectors.toList());return list1;}).collect(ArrayList::new,ArrayList::add,List::addAll);return userList;}}打印效果如图不是按顺序打印但这不正好就是多线程需要的效果的了吗
http://wiki.neutronadmin.com/news/8738/

相关文章:

  • 南宁免费自助建站模板东莞路桥公司是国企吗
  • 陕西建设网查证件查询windows优化软件排行
  • 网站建设计划书实验总结python wordpress
  • 网站建设技术人员工作总结浙江建设信息港网成绩查询
  • 企业网站建设哪家快宜春网站推广优化
  • 广东网站设计有名的公司学生做的动漫网站
  • 门户网站建设目标建立网站的主要步骤
  • 学校网站开发实际意义嘉兴新闻头条最新消息
  • 奇搜建设辽沈阳网站电商出口营销要多少钱
  • wp如何做双语网站网上售卖平台有哪些
  • 上海建网站计划工作顺利
  • 零食网站建设策划书网页版原神
  • 哈尔滨建站模板展示网络营销策划方案范文
  • 厦门南希网站建设企业网站价格花
  • 网站开发 怎样做费用结算商务网站建设学期总结
  • 精细化学品网站建设涿州网站制作
  • 怎样能让百度搜到自己的网站万网建网站教程
  • 网站开发验收方案seo优化或网站编辑
  • 苏省住房和城乡建设厅网站首页哪些网站用天平做logo
  • 最专业网站建wordpress卸载多说
  • 河北网站快速排名建设谷歌站群系统
  • 牡丹区建设局网站沈阳新联会是什么组织做什么
  • 南京建设网站多少钱免费自建网站工具
  • logo网站设计论文龙岩属于哪里
  • 临沂网站建设制作中山网站优化排名
  • 昆明网站建设推广公司哪家好360网站弹窗推广怎么做的
  • 高端网站定做城乡建设住房建设厅官方网
  • 淘宝优惠劵网站怎么做沧州做网站哪家好
  • 濮阳佳杰网站建设巧用不对称做网站和彩票的同步开奖怎么做
  • 什么样的网站容易做seo线下推广的渠道和方法