CacheStorage线程创建的JavaScript浏览器Cache对象是否安全?

时间:2018-12-19 21:50:23

标签: javascript cachestorage

如果我使用CacheStorage.open()在UI线程中获得与Worker线程相同的Cache,并开始在两端进行读写操作,是否安全?还是会有比赛条件?我希望Cache API是线程安全的(我想像JS中的所有其他API一样)。

1 个答案:

答案 0 :(得分:0)

  

安全吗?

是的。所有方法都返回Promises,因为Cache可能是由另一个线程管理的,然后Promise会解析另一个线程是否执行了该操作。不能同时进行修改或其他此类奇怪的事情。

  

还是有比赛条件?

只要有多个线程,就有竞争条件,那就是事物的本质。这意味着,如果您add()在尝试从另一个WebWorker并行检索get()的高速缓存条目时,可能会也可能不会获得结果。