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

网站做电话线用有网站前台

网站做电话线用,有网站前台,photoshop网页版在线使用,用php做电商网站后台线程 一个进程中只有后台进程运行#xff0c;该进程将会结束。 新创建的线程默认为前台线程#xff0c;Java中只要有一个前台线程运行#xff0c;就不会结束程序#xff0c;如果只有后台线程运行#xff0c;程序就会结束#xff0c;可以在线程对象启动前执行setDae…后台线程 一个进程中只有后台进程运行该进程将会结束。 新创建的线程默认为前台线程Java中只要有一个前台线程运行就不会结束程序如果只有后台线程运行程序就会结束可以在线程对象启动前执行setDaemon(true)语句设置该线程为后台线程。 class Main {public static void main(String[] args) {System.out.println(main()线程是后台线程吗Thread.currentThread().isDaemon());DaemonThread daemonnew DaemonThread();Thread threadnew Thread(daemon,后台线程);System.out.println(Daemons是后台线程吗thread.isDaemon());thread.setDaemon(true);//设置为后台线程System.out.println(Daemons是后台线程吗thread.isDaemon());thread.start();//模拟主线程main执行int i0;for(;i3;i){System.out.println(i);}} }class DaemonThread implements Runnable {//模拟分线程执行public void run(){while(true){System.out.println(Thread.currentThread().getName()正在运行);}}} 线程的优先级 使用setPriority方法设置优先级为1到10数字越大优先级越高获得CPU的使用权机会越大。 class Main {public static void main(String[] args) {Thread minPriority new Thread(new maxpriority(),优先级较高线程);Thread maxPrioritynew Thread(new minpriority(),优先级较低线程);minPriority.setPriority(Thread.MIN_PRIORITY);//设置优先级为1maxPriority.setPriority(Thread.MAX_PRIORITY);//设置优先级为10//开启两个线程minPriority.start();maxPriority.start();}} class maxpriority implements Runnable{public void run(){for(int i0;i3;i) {System.out.println(Thread.currentThread().getName() 正在输出 i);}}} class minpriority implements Runnable{public void run(){for(int i0;i3;i) {System.out.println(Thread.currentThread().getName() 正在输出 i);}} } 线程休眠 当前线程暂停运行进入阻塞状态哦使用sleep()方法。传入参数单位为毫秒。 sleep调用时只能让当前正在运行的线程休眠 class Main {public static void main(String[] args) {new Thread(new Sleepthread()).start();//开启新线程for(int i1;i8;i){try{ if(i5){Thread.sleep(1000);}System.out.println(主线程正在输出i);Thread.sleep(500);}catch(InterruptedException e){e.printStackTrace();}}}} class Sleepthread implements Runnable{public void run(){for(int i1;i8;i){if(i3){try{Thread.sleep(1000);}catch(Exception e){e.printStackTrace();}}System.out.println(Sleep线程正在输出i);try{ Thread.sleep(500);}catch(Exception e){e.printStackTrace();}}} } 主线程在Sleep线程输出3之前连续输出2,3,4说明此时Sleep线程在输出值3时先休眠了一段时间 另外Sleep线程再输出6之前主线程也连续输出5,6说明此时Sleep在输出6时休眠了一段时间。 线程插队 class Main {public static void main(String[] args) throws Exception {Thread threadnew Thread(new Joinrunable(),thread);thread.start();for(int i1;i4;i){if(i2){thread.join();//调用join()方法插队实现}System.out.println(Thread.currentThread().getName()线程正在输出i);}} } class Joinrunable implements Runnable{public void run(){for(int i1;i3;i){System.out.println(Thread.currentThread().getName()线程正在输出i);}} } main()线程和thread线程互相争夺CPU使用权然后当i3时候 线程生命周期的六种基本状态 1新建状态 创建一个线程对象后还没有调用start()方法启动之前的状态 2可运行状态 就绪状态调用了start()方法之后进入的状态。 3锁阻塞状态 当一个线程想要获取一个对象锁该aii锁被其他线程持有该线程进入锁阻塞状态。 4无限等待状态 一个线程等待另一个线程执行一个唤醒动作该线程进入的状态。 5计时等待状态 具有指定等待时间的状态一直保持到超时或被唤醒 6)被终止状态 终止运行由于正常退出或者异常没有被捕获而结束。 线程让步 某个特定时间点线程暂停抢夺CPU采用yield()方法实现。 class Main {public static void main(String[] args) throws Exception {//新建两个线程Thread th1new Fieldthread(th1);Thread th2new Fieldthread(th2); //开启两个线程th1.start();th2.start();} } class Fieldthread extends Thread {public Fieldthread(String name) {super(name);//调用父类带参构造方法}public void run() {for(int i1;i4;i){System.out.println(Thread.currentThread().getName()线程输出i);if(i2){System.out.println(线程让步);//线程让步Thread.yield();}}} } 线程中断 调用两种方法实现 interrupt()方法和isInterrupted()方法 isInterrupted方法判断中断标志位如果为真表示中断。 class Main {public static void main(String[] args) throws Exception {Thread threadnew Thread(new Runnable() {public void run() {for (int i 0; i 4; i) {if(i2){Thread.currentThread().interrupt();System.out.println(线程是否中断Thread.currentThread().isInterrupted());}}}});//创建实例对象thread.start();//启动线程} } 线程同步 class Main {public static void main(String[] args) throws Exception {Salethread salethread new Salethread();new Thread((salethread),线程1).start();//创建并启动新线程new Thread((salethread),线程2).start();//创建并启动新线程new Thread((salethread),线程3).start();//创建并启动新线程} } class Salethread implements Runnable{private int tickets10;public void run(){while(tickets0){try{Thread.sleep(300);}catch(Exception e){e.printStackTrace();}System.out.println(Thread.currentThread().getName()卖出票号是 tickets--);}} } 结果的票数中出现了0之所以这样是因为每个线程都会先调用sleep方法进入休眠一段时间。即假设票数为3时候线程2先进入while循环然后调用sleepf方法休眠一段时间在此期间票数值不变因为票数只有在最后输出时候才会减少线程3进入while循环然后调用sleep()方法休眠一段时间于此同时然后线程1进入while循环然后调用sleep方法进入休眠最后三个线程依次结束休眠状态相继售票即票数由3变化到0 所以为了安全起见使用同步代码块使得多线程访问处理同一资源时候任何时刻只能由一个线程访问处理。 将共享资源的代码放在synchronizedlock关键字修饰的代码块中。 synchronized(lock){ 处理共享资源的代码块 } lock是指锁即某个线程执行时其他线程不能执行。 class Main {public static void main(String[] args) throws Exception {Salethread salethread new Salethread();new Thread((salethread),线程1).start();//创建并启动新线程new Thread((salethread),线程2).start();//创建并启动新线程new Thread((salethread),线程3).start();//创建并启动新线程} } class Salethread implements Runnable{private int tickets10;Object locknew Object();//定义锁public void run(){while(tickets0){synchronized (lock) { try{Thread.sleep(300);}catch(Exception e){e.printStackTrace();}if(tickets0){ System.out.println(Thread.currentThread().getName()卖出票号是 tickets--);}else{break;}}}} } 同步方法
http://www.hkea.cn/news/14531798/

相关文章:

  • 最新备案的网站郑州网页制作案例教程
  • 外贸网站打开速度多城市分站网站建设
  • 做阿里巴巴的网站的费用吗企业网站管理系统 开源
  • 设计好的网站腾讯云一键wordpress
  • 人才招聘网站建设方案诗词门户网站
  • 商务网站内容建设包括做网站美工
  • 重庆网站建设制作设计公司哪家好网站数据模板
  • 公司网站的主页优化三亚的私人电影院
  • 网站建设销售员话术网站建设郑州公司
  • 国内网站制作公司排名wordpress文字添加图片不显示图片
  • 搭建租号网的网站wordpress建企业网站
  • 网站搜索结果页面怎么做找人做网站会不会被偷
  • 怎么在网站挂黑链接h5制作工具手机版
  • wordpress英语培训主题烟台网站的优化
  • 建设企业网站需要多少钱企业品牌推广网站
  • 行业网站联盟网站制作推广招聘
  • 深圳网站建设的费用潍坊市城乡建设局网站
  • 网站厨师短期培训班福州电商网站设计
  • 网站怎么做导航条企业邮箱注册哪个好
  • 怎么用阿里云服务器做网站黄岛网站建设多少钱
  • 亚马逊网站特色wordpress图片768好吗
  • 网站群建设费用网站渗透
  • 做课件需要的纯音乐网站做网站 挣广告联盟的佣金
  • 深圳宝安专业做网站公司做网站的大小
  • 免费个人网站建设制作代码深圳公认的第一富人区
  • 宁波做外贸网站西安企业建站
  • 天津企业网站制作seo百度站长工具
  • 有哪些做调查的网站可以赚钱网站的支付系统怎么做
  • 做销售用的免费发布信息网站施工企业管理杂志官网
  • 网站创建方案怎么写关于单位网站建设的请示