【Java基础】线程和进程
2019-03-23 15:37
127 查看
线程诞生的原因: 随着计算机的发展,对CPU的要求越来越高,进程之间的切换开销较大,已经无法满足越来越复杂的程序的要求了。于是就发明了线程。(要了解线程,首先就要清楚历史背景,先有进程后有线程。)
进程的概念:进程是指可执行程序,并存放在计算机存储器的一个指令序列,它是一个动态执行的过程。
线程的概念: 线程是程序执行中一个单一的顺序控制流程,是程序执行流的最小单元,是处理器调度和分派的基本单位。一个进程可以有一个或多个线程,各个线程之间共享程序的内存空间(也就是所在进程的内存空间)。
线程的组成: 进程的组成:
a.线程ID a.内存空间(代码、数据、进程空间、打开的文件)
b.当前指令指针(PC) b.一个或多个线程组成
c.寄存器和堆栈组成。
线程和进程的区别:
线程的创建:
a.继承Thread类
[code]class MyThread extends Thread{ public void run() { System.out.println(getName()+"线程 正在运行中!"); } } public class ThreadTest { public static void main(String[] args) { MyThread mt=new MyThread(); mt.start(); } }
b.实现 Runnable接口
[code]class PrintRunnable implements Runnable{ public void run() { System.out.println(Thread.currentThread().getName()+"在运行中!"); } } public class Test { public static void main(String args[]) { PrintRunnable pr1=new PrintRunnable(); Thread th1=new Thread(pr1); th1.start(); PrintRunnable pr2=new PrintRunnable(); Thread th2=new Thread(pr2); th2.start(); } }
线程的生命周期如图所示:
简单说明一下:a.jdk8中stop()方法已经不使用了。
今天先复习到这里吧。。。持续更新~
相关文章推荐
- 黑马程序员 Java基础——进程与线程及多线程
- Java基础15:进程间和线程间的通信方式
- 【幻化万千戏红尘】qianfengDay21-java基础学习:进程、线程、Timer
- Java多线程基础:进程和线程之由来
- Java多线程(一)进程和线程的基础知识
- java基础(六)之java进程与线程最全总结
- Java多线程基础:进程和线程之由来
- 黑马程序员——JAVA基础------进程和线程
- 1、Java多线程基础:进程和线程之由来
- 【java基础】Java 中的进程与线程
- Java多线程和内存模型(一):进程和线程基础
- Java多线程基础:进程和线程之由来
- JAVA基础知识系列---线程与进程
- Java多线程基础:进程和线程之由来
- java基础理论---进程与线程
- Java高并发程序-Chapter2 Java并行程序基础 (第四讲)进程和线程
- JAVA基础初探(十四)多线程(线程与进程概述、线程的实现、状态、常用方法、优先级、生命周期)
- java基础之多线程、进程、主线程
- Java基础面试题(进程和线程的区别)
- java基础---进程和线程