进程和线程
记录:
多任务操作系统的实现方式
单核cpu
操作系统让cpu轮流交替执行任务,因为cpu的执行效率远高于计算机内的其他组件,所以让人感觉有多个任务在同时进行,实际上确定的时间点上,cpu只执行某一个任务。
多核cpu
多个核心的cpu可在真正意义上实现多任务执行。但由于任务数量会超过cpu的核心数,所以操作系统也会自动把很多任务轮流调度到每个核心上执行。
进程和线程进程:
对于操作系统来说,一个任务就是一个进程(Process),比如打开一个浏览器就是启动一个浏览器进程,打开一个记事本就启动了一个记事本进程,打开两个记事本就启动了两个记事本进程,打开一个Word就启动了一个Word进程。
线程:
有些进程还不止同时干一件事,比如Word,它可以同时进行打字、拼写检查、打印等事情。在一个进程内部,要同时干多件事,就需要同时运行多个“子任务”,我们把进程内的这些“子任务”称为线程(Thread)
小结
线程是最小的执行单元,而进程由至少一个线程组成。如何调度进程和线程,完全由操作系统决定,程序自己不能决定什么时候执行,执行多长时间
进 ...
Java中到底是值传递还是引用传递
Java中到底是值传递还是引用传递?我们先回顾一下基本概念
实参和形参参数在编程语言中是执行程序需要的数据,这个数据一般保存在变量中。在Java中定义一个方法时,可以定义一些参数,举个例子:
12345678910public class Example {public static void main(String[] args) { String myName = "hawk"; sayYourName(myName);// 实际参数是myName }public static void sayYourName(String name) {// 形式参数是name System.out.println(name); } }
上面的代码中定义一个名为sayYourName的方法,如果想要执行这个方法,那么你需要传入一个String类型的变量给这个方法,定义这个方法时声明的String类型的name就是形式参数,而在这个方法执行时传入的myName就是实际参数。
小结
实际参数是调用有参方法的 ...