线程基础知识

1、程序:可执行文件,exe

2、进程:操作系统进行资源分配的基本单位,双击exe文件变成一个进程,操作系统将文件放到内存中,cpu来执行

3、线程:进程内部调度执行的基本单位,多个线程共享进程。cpu找到进程的main方法,这就是一个主线程

4、线程是进程内部不同任务的切换

5、线程切换:t1线程到cpu执行,操作系统调度t2线程执行时,cpu将t1的执行结果放到缓存中换t2执行

6、单核CPU设定多线程是否有意义?

  有意义。a线程运行到一半,需要传参才能继续执行,等待过程不消耗cpu,此时可以让b线程执行

7、cpu密集型:大量计算

   io密集型:大量的拷贝,输入输出

8、线程数是不是设置的越大越好?

   线程之间的切换也需要消耗资源,所以并不是越大越好

9、线程数设置多少合适?

   与cpu的核数相关,我们肯定希望最大利用核数,有一个公式可以计算

10、并发与并行的区别

  并发:一个处理器同时处理多个任务,将运行时间分为多个时间段,将每个时间段分给不同线程

  并行:多个处理器同时处理多个任务,不存在cpu抢占问题

 

posted @ 2022-03-04 21:59  showMeTheCodes  阅读(24)  评论(0编辑  收藏  举报