论坛首页 Java企业应用论坛

山寨同步队列 VS 官方BT的ArrayBlockingQueue ,结果官方落马!!!

浏览 5652 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (1)
作者 正文
   发表时间:2011-09-30   最后修改:2011-09-30
1、所谓的你的队列不过是把官方ArrayBlockingQueue的Lock改为内部锁罢了
你敢说没ctrl c,ctrl v?
2、如agapple所说,没有考虑到创建线程的开销,
3、这个场景用的是两个CountDownLatch,而不是CyclicBarrier
4、jdk1.6 hotSpot机制,内部锁采用Lock的实现

5、lantian_123的http://www.iteye.com/topic/1115828#2250991写得不错
0 请登录后投票
   发表时间:2011-09-30  
543089122 写道
bao231 写道
lz你好好测测你的程序,我在机子上跑的你写的比官方的落后好几倍呢!


我感觉你写的东西,基本上停留在初学者的水平,任何一个初学者,基本上都能写出这样的代码,没有任何优化的代码,你跟官方比,简直是自取其辱。

你懂什么叫java的current的包得真正含义嘛?



本着学习与分享的态度把这个问题拿出来讨论却受到这样的语言讽刺。。。

我不懂? 你怎么知道我不懂 java的current的包得真正含义?
初学者?别老把别人比成初学者以显示自己比别人强!!!没看到我文字写的是 “是不是我的代码写的有问题”。

最后:看来这个问题还是由我自己来回答好了。昨天晚上换了下JDK,原来测试的是1.6的,换成1.5的后在我破电脑上测试速度比官方的慢了接近9倍多。想不明白与是网上查了查,查到几个前辈的博客说是1.6的synchronized速度基本和ReentrantLock速度差不多,但是1.5的synchronized就慢的多了。



JDK1.6相较于1.5在锁机制上有一定的优化,具体请查看JVM相关资料
0 请登录后投票
   发表时间:2011-10-01  
写的也不错啊  收获挺多的
0 请登录后投票
   发表时间:2011-10-01  
bao231 写道
lz你好好测测你的程序,我在机子上跑的你写的比官方的落后好几倍呢!


我感觉你写的东西,基本上停留在初学者的水平,任何一个初学者,基本上都能写出这样的代码,没有任何优化的代码,你跟官方比,简直是自取其辱。

你懂什么叫java的current的包得真正含义嘛?



     
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics