`
fanguokui
  • 浏览: 1662 次
  • 性别: Icon_minigender_1
  • 来自: 成都
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论
文章列表
     java.util.concurrence底层依赖的基础:Unsafe的compareAndSwap**()。      其依赖于硬件的testAndSet指令。一般的指令都是read或者write,而为了同步互斥,硬件厂商专门开发了testAndSet指令。其原理是“测试一个内存地址里的值V,是否为期望的except,如果是则更新为update,否则不更新且告诉程序非”。      由于testAndSet是一个指令,因此引号内的操作不会被中断从而保证其原子性。 这种方式与synchronized方式最大的区别是,第二种方式线程不会阻塞,而是由应用程序自己决定在条件失败之后的操作(一 ...
   以前一直没搞懂UNICODE编码UTF-8,UTF-16,UTF-32是怎么回事。    上班没事补习了一下。从http://baike.baidu.com/view/40801.htm?fr=ala0_1 看出,UTF-8是变长编码1-4个字节。但是汉字所在的区间4E00-9FBF都是三个字节。因此系统使用UTF-8编码确实比GB18030占空间和带宽。(gbk-gb2312-gb18030汉字两个字节,ascii编码,两种字符集都是跟以前一样1个字节)但GB18030老外电脑会显示乱码。     java中char是无符号16位整数,从链接看出现在已分配的都是在16位以内,所以char ...
Global site tag (gtag.js) - Google Analytics