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

多线程(1)

一、进程【理解】

1. 进程:操作系统(OS)中,每一个被执行的应用程序。

2. 注意:目前操作系统支持多进程,并发执行的任务。

3. 多进程并发执行的原理:微观上串行(一个一个的进程进行执行,获取cpu时间片的进程具有执行权);

宏观上并行(所有的进程看似一起执行)

二、线程

1. 概念:在一个进程中,并发执行的多个任务。线程是进程执行任务的单元、单位。

线程也被称为轻量级的进程。【理解】

2. 主线程:目前程序为单线程,此线程以main函数的开始为开始,以main函数的结束为结束,此线程被称为主

线程(主线程默认执行main函数)

3. 线程的组成部分:【理解】

(1) cpu:获取到cpu时间片的线程获取执行权

(2) 数据:栈空间独立(每一个线程有独立的栈空间);堆空间共享(多个线程可以操作同一个堆空间)。

栈空间用于存储局部变量;堆空间用于存储对象。

(3) 程序代码

4. 代码实现多线程【重点】

(1) 第一种方式:

a. 类继承 java.lang.Thread 类,覆盖 run方法

b. 创建线程对象:MyThread t1 = new MyThread();

c. 开启线程:t1.start() ; // JVM默认执行 run方法

(2) 第二种方式:

a. 类实现 java.lang.Runnable接口,同时实现run方法

b. 创建线程的目标对象:Mytarget mt = new MyTarget();

c. 创建线程对象: Thread t2 = new Thread(mt); // 将目标对象作为参数进行传递

d. 开启线程:t2.start(); // JVM默认调用run方法

http://www.cnnetsun.cn/news/95058.html

相关文章:

  • 基于微信小程序的校园电子图书馆系统毕业设计
  • 创新首发!基于VMD+WDCNN-SENet的故障诊断模型
  • Python好不好学?
  • NAS 部署私人云平台,支持扩展only office等办公应用
  • Linux EEPROM调试
  • 终极解决方案:告别Visual C++运行库缺失困扰,一键完成全版本部署
  • 安达发|当艺术遇见算法:APS系统如何解开工艺品行业的生产魔方
  • Obsidian Style Settings插件使用指南:打造个性化笔记界面
  • Swagger2Word终极指南:一键将API文档转为专业Word格式
  • 【C2000中断Debug】如何定位与调试异常中断
  • vue3中computed计算属性和方法的区别
  • LobeChat国际社区动态:全球开发者共同维护
  • 基于STM32的水质检测系统设计与实现
  • Radm1n1ster CN
  • 重构智慧书-第18条:实力与实干
  • 读捍卫隐私08智能出行
  • 媒体专访实录:LobeChat创始人谈开源初心
  • 小喵播放器 1.1.2| 一款支持视频超分的播放器,支持网页视频以及B站番剧
  • LobeChat待办事项提取与提醒功能实现
  • LobeChat会话管理机制揭秘:让每一次对话都井然有序
  • JS利用分片技术实现大文件分块上传的性能优化?
  • HTML5配合AES加密实现大文件分块传输安全?
  • NPP 热带森林:墨西哥查梅拉,1982-1995 年,R1
  • WordPress粘贴微信公众号内容自动排版
  • 毕设 stm32与深度学习口罩佩戴检测系统(源码+硬件+论文)
  • 手机端AIDE安卓音乐播放器软件代码
  • 如何在 Windows 11/10 中启用IE浏览器?恢复 Internet Explorer 一键搞定,就这么简单!
  • Scholar Inbox 订阅最新学术进展至邮箱
  • D.二分查找-二分答案-求最小——1283. 使结果不超过阈值的最小除数
  • A.每日一题——3562. 折扣价交易股票的最大利润