![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
程序员
文章平均质量分 88
普通网友
这个作者很懒,什么都没留下…
展开
-
Java并发之AQS详解
} public static void main(String[] args) { final Mutex mutex = new Mutex(); new Thread(() -> { System.out.println(“thread1 acquire mutex”); mutex.acquire(1); // 获取资源后sleep保持 try { TimeUnit.SECONDS.sleep(5); } catch(InterruptedException ignore) { } mutex原创 2021-10-08 20:48:06 · 103 阅读 · 0 评论 -
Java设计模式:单例
singleton = new Singleton1_1 (); } return singleton; } } 变种1的好处是写起来简单,且绝对线程安全;坏处是并发性能极差,事实上完全退化到了串行。单例只需要初始化一次,但就算初始化以后,synchronized的锁也无法避开,从而getInstance()完全变成了串行操作。性能不敏感的场景建议使用。 饱汉 - 变种 2 变种2是“臭名昭著”的DCL 1.0。 针对变种1中单例初始化后锁仍然无法避开的问题,变种2在变种1的外层又套了一层ch原创 2021-10-07 14:28:35 · 83 阅读 · 0 评论 -
Java编程:基于socket实现局域网双人联机对战五子棋
while(true){ if(!MyGame.list.contains(line)){ MyGame.list.add(line); break; }else{ System.out.println(“已存在旗子”); line=scanner.next(); } } ou.write(line.getBytes()); MyGame.list.add(line); ChessBroad.iswhite=true; ss=line.split(","); x=new Integer(ss[0]); y=原创 2021-10-07 14:25:09 · 915 阅读 · 0 评论