内容:一个简单的死锁例子,大概的思路:两个线程A和B,两把锁X和Y,现在A先拿到锁X,然后sleep()一段时间,我们知道sleep()是不会释放锁资源的。然后如果这段时间线程B拿到锁Y,也sleep()一段时间的话,那么等到两个线程都醒过来的话,那么将互相等待对方释放锁资源而僵持下去,陷入死锁。flag的作用就是让A和B获得不同的锁。
public class TestDeadLock {
...
工厂方法模式(Factory Method) 工厂模式适合:凡是出现了大量的产品需要创建,并且具有共同的接口时,可以通过工厂方法模式进行创建。在以下的三种模式中,第一种如果传入的字符串有误,不能正确创建对象,第三种相对于第二种,不需要实例化工厂类,所以,大多数情况下,我们会选用第三种——静态工厂方....
单例对象(Singleton)是一种常用的设计模式。在Java应用中,单例对象能保证在一个JVM中,该对象只有一个实例存在。这样的模式有几个好处:1、某些类创建比较频繁,对于一些大型的对象,这是一笔很大的系统开销。2、省去了new操作符,降低了系统内存的使用频率,减轻GC压力。3、有些类如交易所.....
笔记来自>1. Perl中列表指标量的有序集合,数组则是存储列表的变量, 这两个术语经常混用,不过更精确地说,列表指数据,而数组指变量.数组的表示用 @my_array,因为Perl觉得@rray 看起来像array,正如 $calar 看起来像时scalar 标量变量一样.2. 数组下标从0开.....
【 声明:版权全部,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 hash表,有时候也被称为散列表。个人觉得,hash表是介于链表和二叉树之间的一种中间结构。链表使用十分方便,可是数据查找十分麻烦;二叉树中的数据严格有序,可是这是以多一个指针作为代价的结果。ha...
这篇文章转载自:http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html#!comments这里非常感谢作者无私的贡献自己的成果。请大家支持作者的原创,也鼓励自己以后能够写出更好的文章。1. 正则表达式基础1.1. 简单介绍正则表达式并不...
问题描述:已知多边形点集C={P1,P2,...,PN},其排列顺序是杂乱,依次连接这N个点,无法形成确定的多边形,需要对点集C进行排序后,再绘制多边形。 点集排序过程中,关键在于如何定义点的大小关系。 以按逆时针排序为例,算法步骤如下: 定义:点A在点B的逆时针方向,则点A大于点B 1.计算点集的...
&与运算符与运算符用符号“&”表示,其使用规律如下:两个操作数中位都为1,结果才为1,否则结果为0例如下面的程序段。public class data13{public static void main(String[] args){int a=129;int b=128;System.out.pr...
冒泡排序: //降序 public static int[] bubbleSort(int[] array){ for(int i = 0; i = 0; j--){ int temp = array[j]; if...