801.什么是多线程的上下⽂切换?

  1. 多线程:是指从软件或者硬件上实现多个线程的并发技术。
  2. 多线程的好处:
    1. 使⽤多线程可以把程序中占据时间⻓的任务放到后台去处理,如图⽚、视屏的下载
    2. 发挥多核处理器的优势,并发执⾏让系统运⾏的更快、更流畅,⽤户体验更好
  3. 多线程的缺点:
    1. ⼤量的线程降低代码的可读性;
    2. 更多的线程需要更多的内存空间
    3. 当多个线程对同⼀个资源出现争夺时候要注意线程安全的问题。
  4. 多线程的上下⽂切换:
    CPU通过时间⽚分配算法来循环执⾏任务,当前任务执⾏⼀个时间⽚后会切换到下⼀个任务。但是,在切换前会保存上⼀个任务的状态,以便下次切换回这个任务时,可以再次加载这个任务的状态