JavaScript 的单线程模式一直为人所诟病,虽然 AJAX 的出现曾大大缓解这一尴尬情况,但其先天的缺限已经显现出阻碍 AJAX 发展的趋势,因而当前急需寻求解决此问题的突破点。
本文通过一个简单的BBS 系统的例子,引入JavaScript 程序开发最初存在的问题:响应迟滞,动作缓慢。这是单线程惹的祸,它所要求的顺序执行令所有 的任务只能一个接一个的进行,哪怕所做的只是在等待;接着又用异步通信方式对程序进行了改写,现在它可以高效地执行任务了,与服务器交互、响应用户请求, 都很流畅自然。美中不足的是程序的复杂性增加了,可读性降低了。还是单线程在做祟,因为在单线程环境内程序不能被任意启停,所以要换一种程序设计方式和实 现方式,这对程序员可不是好事;文章的最后部分介绍了多线程库及其应用,在其模拟的多线程环境内,程序可在线程之间任意切换,实现如同桌面程序般快捷的响 应,程序设计方式也可以保持开发人员原有的习惯,可谓一举多得!
详细内容,请阅读全文: JavaScript 多线程编程简介。
评论