美文网首页
精进075——多线程任务切换的“三明治模型”

精进075——多线程任务切换的“三明治模型”

作者: Fly_Catkin | 来源:发表于2017-07-31 15:32 被阅读0次

虽然不论从心理学还是从我们的生活经验来看,这种需要任务切换的“多线程”的感觉很糟,效率很低,但我们往往没有选择:一个任务做到一半被打断,然后去做另一个任务,然后又被打断,又去做另一个……这里有个至关重要的事实是:如果你是在非常投入和忘我的思考时被打断,那么你的“损失”和懊恼就会非常大;相反,如果你只是在做抄写一篇文档这种不动脑子的活,那么即便是频繁的中断也不会对你造成太大的影响。所以,如果你能选择好合适的中断点,中断就并不可怕,切换的损失也可以降到最低,如果说多任务工作有什么技巧的话,那么就是“对中断点进行控制和管理的技巧”。 这个技巧的前提是,我们需要对要完成的任务进行有效地剖析,区分出“容忍中断”的部分和“无法容忍中断”的部分,然后用可保证的相对完整的时间去施行那些“无法容忍中断”的部分。为此我提出了一般任务分解的“三明治模型”:

Paste_Image.png

想象它是一个金枪鱼三明治,它的中间部分是金枪鱼肉泥,吃下这个部分的努力我称为“核心思考区间”。事实上大多数任务都有一个至关重要、通常也是最棘手的部分,这个部分需要我们集中精力、非常专注地进行思考,然后将其破解,一旦这个部分被我们“吃下”,那么这个任务就已经完成了大半,余下的就是一些支持性的、补充性的工作(即“支持性思考区间”和“操作性动作区间”)。

http://www.chaishubang.com/memoirs/memoirsinfo/3112

相关文章

  • 精进075——多线程任务切换的“三明治模型”

    虽然不论从心理学还是从我们的生活经验来看,这种需要任务切换的“多线程”的感觉很糟,效率很低,但我们往往没有选择:一...

  • 开卷有益5-3《精进》

    杨海莎分享3 《精进》 从工作的核心区开始 作者提出一般任务分解的模型“三明治模型”。想象它是一个肉泥三明治,中心...

  • 《精进》| 任务分解的两个模型

    对任务进行分解的两个模型: 模型一:“三明治模型” —— 根据思考核心,认知复杂度进行分类 【“任务转换损耗”】:...

  • Node.js 运行机制:Event Loop

    并发模型 常见的并发模型是并行工作者模型,任务分配给多个工作者,每个工作者完成整个任务,常说的 C 语言的多线程就...

  • 7.多任务-多线程-进程

    多任务-多线程-进程 并发:任务数多于CPU核数,通过调度算法,实现多任务一起执行,切换速度很快。宏观是任务同时运...

  • Android 线程间通信

    Android系统为多线程提供的几种方案以及各自应用场景 1、异步任务 AsyncTaskAsyncTask是切换...

  • OC总结篇 - 多线程

    进程和线程 重要: 线程是执行任务的 多线程的原理 CPU在单位时间片里快速的在各个线程之间切换 多线程意义 优点...

  • Java并发编程相关

    参考:方腾飞 魏鹏 程晓明 《Java并发编程的艺术》 1. 上下文切换 CPU分时间片处理多线程任务,切换执行线...

  • 多线程知识点总结(2)

    多线程到底好不好? 如果任务耗时短,线程太多会造成上下文切换时间超过任务执行时间任务耗时长的话,看任务类型:CPU...

  • Dart 单线程、Isolate

    Dart 单线程模型 众所周知,在Java中使用多线程来处理并发任务,适量并合适地使用多线程,能够极大地提高资源的...

网友评论

      本文标题:精进075——多线程任务切换的“三明治模型”

      本文链接:https://www.haomeiwen.com/subject/iokrlxtx.html