当前课程知识点:JAVA程序设计进阶 > 第一章 线程(上) > 1.1 线程的基本概念 > Video
这一节我们将介绍
线程的基本概念
首先介绍一下什么是线程
一个线程就是一个程序内部的
顺序控制流
每当我们提到线程
就不可避免的
要和进程进行比较
那进程是我们学习
操作系统过程中的一个概念
每个进程都会有独立的代码
和数据空间
也就是进程上下文
进程切换的开销比较大
而线程是轻量的进程
同一类线程共享代码
和数据空间
每个线程有独立的运行栈
和程序计数器
线程之间切换的开销比较小
多进程指的是在操作系统中
能够同时运行多个任务
那现在大家所采用的
操作系统的话
很多都是多进程的操作系统
比如说你可以同时
打开一个IE在浏览网页
也可以同时打开一个word
在编辑你的文档
那每一个word
或者每一个IE程序
就是一个各自是一个进程
那它们同时运行的话
对于操作系统来说就是多进程
那今天我们要学的是多线程
多线程指的是
在同一个应用程序中
有多个顺序流可以同时运行
也就是说当你们
去编写一个JAVA程序
可以采用线程的话
那就可以让多个代码段
同时来运行
我们下面介绍一下
线程的概念模型
线程在执行过程当中
必须得到CPU资源
那在我们的JAVA类当中
就有一个类java.lang.Thread
由它来去模拟一个虚拟的CPU
那对于CPU的话
它首先需要执行代码
那我们就写执行代码
把它传递给Thread类
那CPU在处理过程中
也需要一些数据
所以我们也需要把数据
传递给Thread类
下面我们介绍线程体
JAVA的线程
是通过java.lang.Thread
这个类来实现的
那每个线程
都是通过某个特定的
Thread对象的方法run
来完成其操作的
那方法run我们就称之为线程体
也就是说我们作为一个程序员
当你想执行某一些代码的时候
你把你这些代码
放到这个run方法当中
这样在线程执行过程当中
就会执行这些代码
我们构造线程的话有两种方式
第一种方式是定义一个线程类
它继承类Thread类
并重写其中的run方法
那另外一种方式的话
是通过实现接口runnable
然后作为线程的目标对象
在初始化一个Thread类
或者Thread子类时
把目标对象传递给这个线程实例
并由该目标对象
提供线程体run方法
线程的基本概念
我们就介绍到这里
谢谢大家
-1.0 导学
--Video
-1.1 线程的基本概念
--Video
-1.1 线程的基本概念--作业
-1.2 通过Thread类创建线程
--Video
-1.2 通过Thread类创建线程--作业
-1.3 线程的休眠
--Video
-1.3 线程的休眠--作业
-1.4 Thread类详解
--Video
-1.5 通过Runnable接口创建线程
--Video
-1.5 通过Runnable接口创建线程--作业
-1.6 线程内部的数据共享
--Video
-2.0 导学
--Video
-2.1 线程同步的思路
--Video
-2.2 线程同步的实现方式—Synchronization
--Video
-2.3 线程的等待与唤醒
--Video
-2.4 后台进程
--Video
-2.5 线程的生命周期与死锁
--Video
-2.6 线程的调度
--Video
-3.0 导学
--Video
-3.1 线程安全与线程兼容与对立
--Video
-3.2 线程的安全实现-互斥同步
--Video
-3.3 线程的安全实现-非阻塞同步
--Video
-3.4 线程的安全实现-无同步方案
--Video
-3.5 锁优化
--Video
-4.0 导学
--Video
-4.1 URL对象
--Video
-4.2 URLConnection对象
--Video
-4.3 Get请求与Post请求
--Video
-4.4 Socket通信原理
--Video
-4.5 Socket通信实现
--Video
-5.0 导学
--Video
-5.1 Socket 多客户端通信实现
--Video
-5.2 数据报通信
--Video
-5.3 使用数据报进行广播通信
--Video
-5.4 网络聊天程序
--Video
-6.0 导学
--Video
-6.1 Java虚拟机概念
--Video
-6.2 Java虚拟机内存划分
--Video
-6.3 Java虚拟机类加载机制
--Video
-6.4 判断对象是否存活算法及对象引用
--Video
-6.5 分代垃圾回收
--Video
-6.6 典型的垃圾收集算法
--Video
-6.7典型的垃圾收集器
--Video
-7.0 导学
--Video
-7.1 集合框架与ArrayList
--Video
-7.2 LinkedList
--Video
-7.3 HashMap与HashTable
--Video
-7.4 TreeMap与LinkedHashMap
--Video
-7.5 HashSet
--Video
-8.0 导学
--Video
-8.1 Java反射机制
--Video
-8.2 Java静态代理
--Video
-8.3 Java动态代理
--Video
-8.4 Java 反射扩展-jvm加载类原理
--Video
-8.5 Java进阶课程总结
--Video