科研汪的日常 31 多线程
快速而优质地完成工作是打工人的终极诉求,人们总会想各种各样的办法来提高效率,科研汪也在这个道路上不断探索。同时进行多个实验是常规操作,但有时候虽然实验是完成了,实验结果却不尽如人意。故而常常幻想,要是人能像计算机一样拥有多线程工作的能力,工作效率就会大大提高了。
《精进》一书提到:从认知心理学的观点来看,严格来讲实现人的“多线程工作”是不可能的。因为在任何瞬间,人只能有一个“注意焦点”,这个注意焦点牵引了人的认知加工资源。有时你误以为同时关注了两个东西,其实是发生了注意转移的结果,即焦点从一个对象转移到另一个对象上,实际上还是一个串行而非并行的过程。
这里将人的“多线程工作”和计算机的多线程进行了比较,并认为两者不完全相同,但科研汪百度百科之后发现,两者的原理似乎是相通的,虽然计算机给人的感觉会更快。
多线程是指一个处理器划分为若干个短的时间片,每个时间片依次轮流地执行处理各个应用程序,由于一个时间片很短,相对于一个应用程序来说,就好像是处理器在为自己单独服务一样,从而达到多个应用程序在同时进行的效果。但由于大多数计算机仍然采用的是冯·诺依曼结构,这实际上意味着一个处理器在同一个时刻只能处理一件事情。Windows 95/NT采用的任务调度策略,把一个进程划分为多个线程,每个线程轮流占用CPU的运算时间,操作系统不断地把线程挂起、唤醒、再挂起、再唤程,如此反复,由于现在CPU的速度比较快,给人的感觉是多个线程在同时执行,就好像有多个CPU存在于计算机中一样。”
没有三头六臂的科研汪妄想多任务同时进行是不切实际的,但更加合理地安排规划实验时间,充分利用实验的间隙,实现多任务的快速转换还是有机会的。
参考链接:
1. 多线程:
https://baike.baidu.com/item/%E5%A4%9A%E7%BA%BF%E7%A8%8B/1190404?fr=aladdin