多线程的基本理解

来源:互联网 发布:mac内存清理 编辑:程序博客网 时间:2024/05/21 22:52

1、进程和线程的概念

进程:是应用程序在内存中分配的空间(正在运行的程序,是动态性的,持有资源和线程)。

线程:是进程中负责程序执行的最小执行单元,也称为执行路径。


2、进程和线程的关系

一个进程中至少有一个线程在负责该程序的运行,如果同一个进程中出现了多个线程,就称该程序为多线程程序。

线程共享进程的资源(共享内存、共享文件)。


3、多线程技术原理

解决多部分代码同时执行的需求,合理的使用CPU资源。

单核CPU一次只能处理一个线程,单核CPU实现多线程实际上是CPU在线程间进行快速的切换,多线程不是真正的提高效率,仅仅是合理的利用资源。

多线程的运行是根据CPU的切换完成的,怎么切换CPU说了算,所以多线程运行有一定的随机性(CPU的快速切换造成的)。


4、JVM中的多线程


通过实验,会发现每次结果不一定相同,因为随机性造成的,而且每一个线程都有运行的代码内容,称为线程的任务。之所以创建一个线程就是为了

去运行指定的任务代码。

而线程的任务都封装在特定的区域中,比如:

主线程运行的任务都定义在main方法中

垃圾回收线程进行垃圾回收时都会运行finalize方法

1 0
原创粉丝点击