一、什么是多线程
1. 每一个进程都是一个应用程序,都有独立的内存空间,一般来说一个应用程序存在一个进程,但也有多个进程的情况。
2. 同一个进程中的线程共享内存中内存和资源。
3. 线程处理方式通过堆栈的形式来处理的,先进后出。放在堆内存里面管理
4. 每一个程序如果要运行,它都会创建一个主线程(每个程序都有一个主线程),程序启动时创建(调用main来启动)。
5. 每一个程序只有一个进程,但是在一个进程里面有多个线程。(也有1个线程的情况),进程相当于是一个容器,在这个容器里面装了多个进程,线程是在运行的,它可以去调用函数调用代码。
6. 主线程的生命周期和应用程序绑定的,程序退出(结束)时,主线程也就停止了。
7. 多线程技术表示,一个应用程序有多个线程,使用多线程能够提供CPU的使用率,防止主线程堵塞。
8. 任何有可能堵塞主线程的任务不要在主线程执行(访问网络)
9. 进入后台时,主线程就会被挂起(程序退出时,主线程会被退出)
10. 每个线程相当于是一个路径,多线程相当于是多个分支的路径,由主路径(主线程)分支出来
11. 4和CPU就是多线程任务同时处理的
二、使用多线程的目的是什么
1. 引入多线程的主要目的是对大量任务进行有序的管理。通过多个任务的混合使用,可以更有效地利用计算机资源,避免主线程阻塞。
2. 比如在加载网络图片的时候,如果加载网络图片的过程用主线程来加载就会导致主线程堵塞,因为图片正在加载过程中正在使用主线程,这个时候无法操作其他了,所以这