线程基础知识
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抢占问题
作者:http://cnblogs.com/lyc-code/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权力。