一、简介
进程:是计算机上的程序关于某数据集合上的一次运行活动。是系统进行资源分配和调度的基本单位,是操作系统结构的基础。在当代面向线程设计的计算机结构中,进程是线程的容器。程序是指令、数据及其数据形式的描述。进程是程序的实体,是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础,程序是指令、数据及其组织形式的描述,进程是程序的实体。
多进程:在操作系统中可以同时运行多个程序。
线程:是操作系统进行运算调度的基本单位,它被包含在进程之中,是进程中的实际运作单位,一条线程指的是进程中一个单一顺序的控制流。一个进程可以并发多个线程,每条线程并行执行不同的任务。
多线程:在一个应用程序中可以同时执行多个功能,例如迅雷中可以同时执行多个下载任务旧是多线程。
总结如下:
进程:指在系统中正在运行地一个应用程序;程序一旦运行就是进程,进程-----资源分配的最小单位。
线程:系统分配处理器时间的资源的基本单元。或者说进程之内独立执行一个单元执行流。线程------程序执行的最小单位。
特性:
1、一个进程可以包含多个线程。
2、一个线程必须属于某个线程,进程是线程的容器。
3、一个进程中的多个线程共享该进程中的所有资源。
CPU时间片:对于单核CPU,在某个时间点只能处理一个程序。CPU分配给各个程序的时间,称为时间片,即该进程允许的运行时间(时间很短)。
1、从表面上看各个程序是同时运行的,实际上CPU在同一时间只能执行一个程序。
2、只是CPU在很短的时间内,在不同程序间切换。轮流执行每个 程序,执行速度很快,所以感觉上像是同时在运行。
二、创建线程
两种方式:
1、继承Thread类
2、实现Runnable接口
1、继承Thread类
步骤:
1、定义一个类,继承自Thread类,重写run()方法。
2、创建该类的实例,即创建一个线程。
3、调用start()方法,启动线程()(不能直接调用run()方法)。