摘要: 一 Test-and-Set Lock 所谓测试设置是最基本的锁,每个线程共用一把锁,进入临界区之前看没有有线程在临界区,如果没有,则进入,并上锁,如果有则等待。java实践中利用了原子的设置state变量来保证一次只有一个线程可以获得到锁。 这种锁优点就是简单,缺点是在硬件层面上读取state时候 阅读全文
posted @ 2017-08-17 18:43 bdbk 阅读(450) 评论(0) 推荐(0) 编辑
摘要: 一、定义 vue的数据双向绑定是基于Object.defineProperty方法,通过定义data属性的get和set函数来监听数据对象的变化,一旦变化,vue利用发布订阅模式,通知订阅者执行回调函数,更新dom。 二、实现 vue关于数据绑定的生命周期是: 利用options的data属性初始化 阅读全文
posted @ 2017-07-22 10:53 bdbk 阅读(944) 评论(0) 推荐(0) 编辑
摘要: 前几天写了一个贪吃蛇小游戏,正好用到了状态模式。 当一个对象内部状态发生改变时候,会导致其行为的改变,这看起来像是改变了对象。 如果一个函数要更具某一个对象的状态来判断该对象应该执行的方法,那么这个函数中会增加很多if判断分支,并且,如果要增加这个对象的一种状态,那么就要在原来的代码中添加一些判断, 阅读全文
posted @ 2016-03-20 15:36 bdbk 阅读(643) 评论(0) 推荐(1) 编辑
摘要: 一 关于事件的异步 事件是JavaScript中最重要的一个特征,nodejs就是利用js这一异步而设计出来的。所以这里讲一下事件机制。 在一个js文件中,如果要运行某一个函数,有2中手段,一个就是直接调用,比如foo(),第二就是利用事件来触发,这中函数也叫回调函数,比如传递给setTimeout 阅读全文
posted @ 2016-02-20 17:56 bdbk 阅读(711) 评论(0) 推荐(1) 编辑
摘要: 如果你用过ctrl+F这个快捷键,那么你有很大的概率使用过这个算法,这就是在待查找字符串(可能有成千上万个字符)中找出模式串(比较小,可能有几个字符),可能找到大于或者等于1次的位置。例如,在ababcd中找出abc。这里介绍算法思想,只给出了第一次出现的位置。 一.算法思想 传统算法是从匹配串第一 阅读全文
posted @ 2016-02-20 11:43 bdbk 阅读(4548) 评论(0) 推荐(0) 编辑
摘要: 一.起源 JavaScript中的异步由来已久,不论是定时函数,事件处理函数还是ajax异步加载都是异步编程的一种形式,我们现在以nodejs中异步读取文件为例来编写一个传统意义的异步函数: var fs = require('fs'); function readJSON(filename,cal 阅读全文
posted @ 2016-02-06 21:50 bdbk 阅读(13305) 评论(3) 推荐(0) 编辑
摘要: 看着java中各种import加载,在回过头来看看javascript还在自己造轮子,写各种XX的模块加载框架,ECMASCRIPT6不知什么时候能够普及。不过DT归DT,该学的还是要学。一 同步加载模式(SMD)同步顾名思义就是按顺序依次加载执行,比如A模块要引用B模块中的某些函数完成事情,那么此... 阅读全文
posted @ 2016-01-05 10:12 bdbk 阅读(7121) 评论(4) 推荐(1) 编辑
摘要: 一.函数基本理论 function compare(val1,val2){ return val1 - val2; }var result = compare(5,10); 1,函数的定义没什么意义,之后创建一个字符串,就是函数代码 2,函数执行(被调用)的时候发生的事情:(以上面的代码为例) 创建 阅读全文
posted @ 2016-01-04 19:51 bdbk 阅读(1355) 评论(0) 推荐(2) 编辑
摘要: 定义单例模式就是一个类只能实例化一个对象,并且提供了一个访问它的全局访问点。一般在实现登陆框,或者一个全局的控制器都会用到单例模式。现实中有window对象,线程池,全局缓存等。简单实现var Person = function(name){ this.name = name; this... 阅读全文
posted @ 2015-11-23 16:47 bdbk 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 定义传统的块级元素定义中只是说明了在文档流中形成了一个块,在前后加换行,这里有些笼统。 其实框元素是指宏观上的框元素,它包括3种类型:1.本身就是块级元素 2.dispaly被设置为类block 3.由于某些元素的包含关系迫使其形成块级元素。前2类比较容易理解,第3类稍后举例时候回说明。而,行内元素... 阅读全文
posted @ 2015-11-22 23:54 bdbk 阅读(1950) 评论(1) 推荐(0) 编辑