异步编程演变与发布订阅

目录

  • 1. V8线程
    • 1.1 多线程
    • 1.2 js引擎线程
    • 1.3 异步处理线程
    • 1.4 回调问题
  • 2. 异步编程解决方案
    • 2.1 发布订阅
  • 3. 观察者模式

1. V8线程

1.1 多线程

异步编程演变与发布订阅_第1张图片

1.2 js引擎线程

异步编程演变与发布订阅_第2张图片

1.3 异步处理线程

异步编程演变与发布订阅_第3张图片

1.4 回调问题

异步编程演变与发布订阅_第4张图片

  • 违法直觉
  • 地狱回调

2. 异步编程解决方案

  • 发布/订阅
  • deferred对象
  • Promise
  • Generator
  • async/await
    以同步的方式书写异步代码。

2.1 发布订阅

异步编程演变与发布订阅_第5张图片
简单实现
异步编程演变与发布订阅_第6张图片
发布订阅解决回调问题
异步编程演变与发布订阅_第7张图片

3. 观察者模式

在观察者模式里面就是被观察者 Subject,它只需维护一套观察者 Observer 的集合,将有关状态的任何变更自动通知给它们 watcher 观察者 这个设计是松耦合的。
实例: Vue 数据侦测观察者
异步编程演变与发布订阅_第8张图片

你可能感兴趣的:(Google,V8,底层机制和原理,vue.js,前端,javascript)