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

做网站是百度包年快照企业做网站的用途

做网站是百度包年快照,企业做网站的用途,网站源码程序修改,环球军事网83.多线程 什么是线程#xff1a; 线程右进程创建的#xff0c;是进程的一个实体 一个进程可以有多个线程 并发#xff1a;同一个时刻#xff0c;多个任务交替执行#xff0c;造成一种貌似同时的错觉 并行#xff1a;同一个时刻#xff0c;多个任务同时执行#x…83.多线程 什么是线程 线程右进程创建的是进程的一个实体 一个进程可以有多个线程 并发同一个时刻多个任务交替执行造成一种貌似同时的错觉 并行同一个时刻多个任务同时执行多核CPU可以实现。可能并发和并行同时存在 通过Java查询电脑的CPU个数 public class HelloJava { ​public static void main(String[] args) {Runtime runtime Runtime.getRuntime();//获取当前电脑的cpu数量int cpuNums runtime.availableProcessors();System.out.println(当前电脑的cpu个数 cpuNums);} ​ } 线程基本使用 创建线程的两种方法 继承Thread类重写run方法 实现Runnable接口重写run方法 注意若主线程结束了但还有子线程在运行就不会导致整个线程关闭 为什么要用cat.start()而不是直接用cat.run()呢 run就是一个普通方法没有真正启动一个线程就会把run方法执行完毕才向下执行 相当于串行化执行 start才会真正的启动一个线程 (1) public synchronized void start(){start0(); } (2) //start0()是本地方法是JVM调用底层是C/C实现 //真正达到多线程效果的是start(),而不是run() private native void start0(); //start()调用start0()方法后该线程不一定会立马执行只是将线程变成了可运行状态。具体什么时候执行取决于CPU由CPU统一调度 通过Runnable接口实现线程 因为Java是单继承的在一个类可能已经继承了某个父类这时在用继承Thread方法来创建线程显然不可行 所以提供了另一个方式创建线程就是通过实现Runnable接口 Runnable没有start()方法怎么办呢 //创建一个Thread对象把dog对象(实现Runnable)放入Thread Thread thread new Thread(dog); thread.start(); //这里调用start()方法启动线程并带动run方法 //这里是因为底层使用了 代理模式逻辑如下 ​ //线程代理类模拟了一个极简的Thread class ThreadProxy implements Runnable{private Runnable target null;Overridepublic void run(){if(target ! null){target.run();//动态绑定}}public ThreadProxy(Runnable target){this.target target}public void start(){start0();}public void start0(){run();} } 多线程案例 public class HelloJava {public static void main(String[] args) {T1 t1 new T1();T2 t2 new T2();Thread thread1 new Thread(t1);Thread thread2 new Thread(t2);thread1.start();thread2.start();} } class T1 implements Runnable{ ​int count 0; ​Overridepublic void run() {while (true) {//每隔一秒输出“Hello World”10次System.out.println(hello world (count));try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}if (count 10){break;}}} } class T2 implements Runnable{ ​int count 0; ​Overridepublic void run() {while (true) {//每隔一秒输出“hi”五次System.out.println(hi (count));try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}if (count 5){break;}}} } 通知线程退出 当线程完成任务后会自动退出 还可以通过使用变量来控制run方法退出的方式停止线程即通知方式 //需求启动一个线程t要求在main线程中去停止线程t public class HelloJava {public static void main(String[] args) throws InterruptedException {T t new T();t.start();//如果希望主线程控制t线程的终止必须可以修改loop//让t退出run方法从而终止t线程 -通知方式 ​//让主线程休眠10秒再通知t线程退出Thread.sleep(1000*10);t.setLoop(false);} } class T extends Thread{//设置一个控制变量private boolean loop true;int count 0; ​Overridepublic void run() {while (loop) {try {Thread.sleep(50);} catch (InterruptedException e) {e.printStackTrace();}System.out.println(T 运行中...... (count));}} ​public void setLoop(boolean loop) {this.loop loop;} } 线程常用方法 1.setName 设置线程名称使之与参数 name 相同 2.getName 返回该线程的名称 3.start 使该下暗藏卡爱上执行Java虚拟机底层调用该线程的start0方法 4.run 调用线程对象run方法 5.setProiority 更改线程的优先级 6.getProiority 获取线程的优先级 7.sleep 在指定的毫秒数内让当前正在执行的线程休眠 8.interrupt 中断线程 interrupt中断线程但没有真正的结束线程所以一般用于中断正在休眠的线程
http://www.dnsts.com.cn/news/256761.html

相关文章:

  • 高端网站建设北京网站模板对seo的影响吗
  • 做网站要哪些人员wordpress+h5幻灯片
  • 做网站徐州网易企业邮箱怎么切换账号
  • 网站建设要用什么软件自己怎么样做游戏网站
  • php网站做退出的代码新型城镇化建设网站
  • 外贸网站建设智能建站国家企业信用信息系统(全国)
  • 上传网站教程一站式做网站系统
  • 云南城市建设职业学院网站微营销案例
  • 做黄金的分析师网站企业网站优化的方案
  • 代加工网站有哪些网站突然消失了
  • 做淘宝客网站能赚到钱吗马鞍山网站建设方案
  • 网站建设的作用有哪些方面网站什么时候做负载均衡
  • 多个网站优化怎么做西安网站漏洞
  • 深圳微网站建设公司哪家好wordpress 大站点
  • 长沙百度网站推广优化有哪些网站做的比较好看的
  • 天猫商城官网首页网站建设优化服务报价
  • 茶叶网站开发目的和意义怎么做企业网站建设方案
  • 什么网站开发客户福清小程序建设公司
  • 做网站要通过网信办备案吗asp网站木马扫描
  • 网站接入百度地图网站建设公司对父亲节宣传口号
  • 用WordPress做网站入门课口碑优化seo
  • 小企业网站建设怎么做好网站制作+app+公众号
  • 四川阿坝建设招标网站食品网站设计欣赏
  • 网站建设与维护试题及答案外贸新手怎样用谷歌找客户
  • dw 8做的网站怎么上传广告设计与制作工资
  • 一般网站怎么做推广网站怎么推广比较好
  • 有什么好黄页网站无锡正规网站建设
  • 企业自建网站的优势临沂市建设局官方网站
  • php房产网站开发教程wordpress网站搭建教程
  • 阳江网站开发单位网站建设必要性