并发与并行都是强调同时执行。而他们两个并行代表的是真正的同时执行,并发只是可以宏观上认为是同时执行,并不是真正的同时执行。
为什么呢?
并发:多个线程任务通过一个cpu执行,所以这些线程任务只能通过切换执行来实现并发,只不过这些线程切换的速度很快,宏观上看似乎就是同时执行的,其实还是一个一个执行的,只不过可以切换执行。
并行:多个线程任务通过多个cpu执行,真正意义上的同时执行。因为有多个cpu,一个cpu执行一个任务就好了。
并发与并行都是强调同时执行。而他们两个并行代表的是真正的同时执行,并发只是可以宏观上认为是同时执行,并不是真正的同时执行。
为什么呢?
并发:多个线程任务通过一个cpu执行,所以这些线程任务只能通过切换执行来实现并发,只不过这些线程切换的速度很快,宏观上看似乎就是同时执行的,其实还是一个一个执行的,只不过可以切换执行。
并行:多个线程任务通过多个cpu执行,真正意义上的同时执行。因为有多个cpu,一个cpu执行一个任务就好了。