操作系统在调度线程的时候,实际上为每个线程分配了很小的时间片,每个线程在各自的时间片执行,操作系统负责切换那举个例子:
需要打开5个Form窗口,每个窗口打开时,需要进行很多计算,因此,打开很慢
我想问:
如果使用单线程,一个一个的打开5个窗口
使用多线程,打开5个窗口总的运行时间,哪个更短?
我的理解是,总的运行时间一样多,多线程无非就是在多个线程之间切换来,切换去,看起来好像是同时进行,只是让用户感官上好一点,我的这种理解正确吗?
需要打开5个Form窗口,每个窗口打开时,需要进行很多计算,因此,打开很慢
我想问:
如果使用单线程,一个一个的打开5个窗口
使用多线程,打开5个窗口总的运行时间,哪个更短?
我的理解是,总的运行时间一样多,多线程无非就是在多个线程之间切换来,切换去,看起来好像是同时进行,只是让用户感官上好一点,我的这种理解正确吗?
(2)多线程是否能提高性能取决于它们对资源的使用情况。注意,这个资源未必是CPU资源。
不一定看它的机器配置,是几个cpu几个核的
并行运算和节约CPU时间有什么关系?vrhero说的都白说了?
假设你是双核的你开2个线程进行运算,一个用时15秒
你开一个线程运算一个用时20秒
你说哪个对顾客的体验度高?
我有说并行运算和节约cpu时间有关系?
你怎么从来不看我说的啥呢?
如果你的机子是多核的。如果你一直使用单线程。等于有一个cpu一直在空着。在进行服务器高并发处理时。推荐的线程数cpu个数*2。一般都是这样。