线程
浏览器线程阻塞和无阻塞加载脚本的理解
一个页面,从被请求访问,到用户可以看到页面、操作页面,到最后页面完全加载完毕,中间需要经历一个相当奇幻的过程,这个过程的速度被“web性能师”孜孜不倦、前赴后继的优化。本文讨论的是其中一个优化。浏览器线程和阻塞虽然大家耳熟能详的一句话是:JavaScript是单线程的。但是:浏览器当然不是单线程的。浏览器的多线程中,有的线程负责加载资源,有的线程负责执行脚本,有的线程负责渲
业界
2016年08月02日
理解Event-Loop
Event Loop(事件轮询)机制是一个经常把人搞晕的东东。我不敢说我完全明白,只是在此谈谈我的浅见。事件的处理浏览器是一个事件驱动(event-driven)架构的软件。它的UI线程中会不断产生用户事件。但是处理事件的JavaScript是单线程执行的,这是一个浏览器环境下难以改变的现状(HTML5 Web Works没有从本质上改变这个模型)。这意味着:在JavaSc
业界
2016年08月02日
ConcurrentHashMap,一条长着熊掌的鱼
在现实开发中,不可避免地会碰到一些多线程并发访问的情况。为了解决这个问题,HashTable 和HashMap 先后诞生。问题也随之而来,使用后发现HashTable 虽然能保证线程安全但是效率低下,而HashMap 虽然效率高于hashTable 但是是非线程安全的。这个很像一个鱼与熊掌的问题,真的不可兼得吗?于是人们就考虑有没有一种及支持并发有能保证线程安全的方法。终于
产品经理
2016年10月11日
产品经理须知的“技术黑话”
文章梳理了一些技术术语,以比较通俗的方式来解释和介绍,希望对于非技术背景的产品经理们有所帮助。产品经理在实际工作中经常会遇到一些“技术黑话”,这些技术语言让非技术背景的产品经理们经常不知所云,带来了一些沟通和理解的问题,这里梳理了一些但不全的技术术语,以比较通俗的方式来解释和介绍,希望对于非技术背景的产品经理们有所帮助。1. 类、对象、抽象和实例在技术的世界里,有一类编程语
产品经理
2018年02月26日