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

用c 做的网站怎么打开wordpress 用户相册

用c 做的网站怎么打开,wordpress 用户相册,云浮北京网站建设,网站编辑转做新媒体运营目录 #x1f923;一.线程与进程的概念与联系#xff1a; 进程的基本概念#xff1a; 线程的基本概念#xff1a; 进程和线程的区别与联系#xff1a; #x1f643;代码执行实列#xff1a; 1.通过继承Thread父类来实现多线程 2.通过实现Runnable接口来实现多线程…目录 一.线程与进程的概念与联系 进程的基本概念 线程的基本概念 进程和线程的区别与联系 代码执行实列 1.通过继承Thread父类来实现多线程 2.通过实现Runnable接口来实现多线程 3.通过Lambda表达式来实现多线程: Thread类的常见属性和构造方法: 一.线程与进程的概念与联系 一张漫画生动阐明进程进程与线程的关系 进程的基本概念 什么是进程→ 定义进程是一个具有一定独立功能的程序在一个数据集合上依次动态执行的过程。进程是一个正在执行的程序的实例包括程序计数器寄存器和程序变量的当前值。 进程有哪些特征→ 1.进程依赖于程序的运行而存在进程是动态的程序是静态的 2.进程是操作系统进行资源分配和调度的一个独立单位CPU除外线程是处理器任务调度和执行的基本单位 3.每个进程拥有独立的地址空间地址空间包括代码区数据区和堆栈区进程之间的地址空间是间隔的互不影响 线程的基本概念 什么是线程 定义一个线程就是一个“执行流”每个线程之间都可以按照顺序执行自己的代码多个线程之间“同时”执行着多份代码 为什么要用到线程 ⾸先, 并发编程 成为 刚需 为了充分利用CPU的资源避免出现“一核工作多核围观”的情况我们可以通过编写特殊的代码把多个CPU核心充分利用起来这样的代码就称为“并发编程”多进程的编程就是一种典型的并发编程。虽然多进程能够解决问题但是随着对于效率的要求越来越高就希望有更好的方法来实现并发编程。而多进程的编程最大的问题就是进程太“重”创建进程/销毁进程的开销比较大时间空间一旦场景需要频繁的创建和销毁进程开销就非常明显了→最典型的是服务器开发针对每一个发出请求的客户端都创建一个单独的进程由这个进程负责给客户端提供服务。为了解决进程开销比较大的问题就发明了线程Thread线程可以理解为更加轻量级的进程也能解决开发并发程序的问题但是创建/销毁的开销要比进程更低。 进程和线程的区别与联系 1.进程包含线程 一个进程里至少包含一个线程主线程也可以包含多个线程。不能没有线程 2.进程是系统分配资源的基本单位 3.线程是系统调度执行的基本单位 4.同一个进程里的线程之间共用一份系统资源内存硬盘网络宽带等尤其是内存资源就是代码中定义的变量/对象等信息编程中多个线程是可以共用同一份变量的~5.多线程是当下实现并发编程的主流方式通过多线程就可以充分利用好多核CPU。但是也不是线程数目越多就越好线程数目达到一定程度把多个核心都利用充分之后此时继续增加线程无法再提高效率甚至可能会影响效率线程的调度也是有开销的6.多个线程之间可能会互相影响线程安全问题。一个线程抛出异常也可能会把其他线程一起带走 7.多个进程之间一般不会互相影响一个进程奔溃了不会影响到其他进程进程的隔离性 代码执行实列 1.通过继承Thread父类来实现多线程 //1.通过继承Thread父类来实现进程 class MyThread extends Thread{Overridepublic void run(){//这里写的代码就是即将创建的线程要执行的逻辑while(true){System.out.println(hello thread);try {Thread.sleep(1000);} catch (InterruptedException e) {//throw new RuntimeException(e);e.printStackTrace();}}} } public class Demo1 {public static void main(String[] args) throws InterruptedException {MyThread t new MyThread();//创建线程-运行hello main 和 hello thread 并发执行同时打印t.start();//run 不会创建线程也是再主线程中执行逻辑//t.run();只循环打印hello threadwhile(true){System.out.println(hello main);Thread.sleep(1000);}} }也可以通过匿名内部类来实现 //通过匿名内部类来创建多线程 public class Demo3 {public static void main(String[] args) throws InterruptedException {Thread t new Thread(){Overridepublic void run(){while(true){System.out.println(hello thread);try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}}}};t.start();while(true){System.out.println(hello main);Thread.sleep(1000);}} }运行结果 2.通过实现Runnable接口来实现多线程 //2.通过实现Runnable接口来实现多线程 class MyRunnable implements Runnable{//描述线程里要完成的逻辑是啥Overridepublic void run() {while(true){System.out.println(hello thread);try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}}} } public class Demo2 {public static void main(String[] args) throws InterruptedException {MyRunnable runnable new MyRunnable();Thread t new Thread(runnable);t.start();while(true){System.out.println(hello main);Thread.sleep(1000);}} }也可以通过匿名内部类来实现 public class Demo4 {public static void main(String[] args) throws InterruptedException {//通过匿名内部类来编写Thread t new Thread(new Runnable() {Overridepublic void run() {while(true){System.out.println(hello thread);try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}}}});t.start();while(true){System.out.println(hello main);Thread.sleep(1000);}} }3.通过Lambda表达式来实现多线程: //通过lambda表达式来进行编写 public class Demo5 {public static void main(String[] args) throws InterruptedException {Thread t new Thread(()-{while(true){System.out.println(hello thread);try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}}});t.start();while(true){System.out.println(hello main);Thread.sleep(1000);}} }Thread类的常见属性和构造方法: Thread类常见的构造方法 Thread类常见的属性 public class Demo6 {public static void main(String[] args) {Thread t new Thread(()-{while(true){System.out.println(hello thread);try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}}},自定义线程);//-线程名字为自定义线程t.start();System.out.println(线程ID : t.getId());System.out.println(线程名字: t.getName());System.out.println(线程状态: t.getState());System.out.println(线程执行顺序: t.getPriority());} }运行结果 Runnable正在运行实际上Java没有Running这个线程状态把正在CPU上运行和随时可以调度到CPU上运行的都统称为Runnable 前台线程后台线程 后台线程如果这个线程执行过程中不能阻止进程结束虽然线程执行着但是进程就要结束了此时这个线程也会随之被带走这样的线程就称为“后台线程” 前台线程如果某个线程执行过程中能阻止进程的结束此时这个线程就是“前台线程” 前台线程和后台线程主要是影响程序的退出 public class Demo7 {//设置前public static void main1(String[] args) {Thread t1 new Thread(()-{while(true){System.out.println(hello thread);try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}}});t1.start();}//设置后public static void main(String[] args) {Thread t2 new Thread(()-{while(true){System.out.println(hello thread);try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}}});//把 t 设置线程为后台线程守护线程不能在阻止程序结束了t2.setDaemon(true);t2.start();} }结语 写博客不仅仅是为了分享学习经历同时这也有利于我巩固知识点总结该知识点由于作者水平有限对文章有任何问题的还请指出接受大家的批评让我改进。同时也希望读者们不吝啬你们的点赞收藏关注你们的鼓励是我创作的最大动力
http://www.hkea.cn/news/14365628/

相关文章:

  • 找兼职h5网站开发人员wordpress 免费中文企业主题
  • 泸州百拓网站建设网页升级访问紧急通通知
  • 电影网站建设哪家便宜网站 权重
  • 检察院门户网站建设自查自纠报告响应是网站怎么做
  • 如何做一个属于自己的网站聊城公司网站建设
  • 手机网站教程常州新北区网站建设
  • 怎样制作免费手机网站宜兴做宠物的网站
  • 做网站违法ios网站开发教程
  • 如何上传网站到凡科网自己做的软件怎么发布
  • 优斗士做网站怎么样php网站环境配置
  • 长春网站建设论坛个人网站平台
  • 一级a视网站 做爰片76人vs猛龙
  • wordpress 站点迁移个人博客网页
  • 临沂网站建设微信手机网站怎样做
  • 寿光做网站常平网站建设公司
  • 禁止百度收录的网站汽车网站推广策略
  • 怎样做动漫照片下载网站广东网页制作与网站建设
  • 营销型网站建设平台公交建设公司官网
  • 建网站带app多少投资Zillah wordpress
  • 网站终端制作企业策划 企业网站建设 品牌设计
  • 提供网站建设方案wordpress图标svg更改
  • 有关建设旅游网站的公司亚马逊跨境电商简介
  • 网站设计咨询网站科技绘画作品图片大全
  • 网站建设服务合同范本公司在选择网站时应考虑什么
  • 怎么做网站程序宝安区建设局网站
  • 视频网站是怎么做权限管理的wordpress小说主题网站
  • 郑州商务网站建设注册域名需要费用吗
  • 如何设计好网站福建城市建设厅网站
  • 河池网站推广乐清网站推广
  • 网站 一级域名 二级域名郑州的网络科技有限公司