【JAVA 并发】四 死锁种类

死锁 银行家算法 这是一个著名的避免死锁的算法,是由Dijstra首先提出来并加以解决的。 [背景知识] 一个银行家如何将一定数目的资金安全地借给若干个客户,使这些客户既能借到钱完成要干的事,同时银行家又能收回全部资金而不至于破产,这就是银行家问题。这个问题同操作系统中资源分配问题十分...

2017-03-18 02:06:41

阅读数 25

评论数 0

死锁是两个甚至多个线程被永久阻塞时的一种运行局面,这种局面的生成伴随着至少两个线程和两个或者多个资源。在这里我已写好一个简单的程序,它将会引起死锁方案然后我们就会明白如何分析它。 死锁范例 ThreadDeadlock.java packagecom.journaldev.threads; ...

2017-03-18 00:20:52

阅读数 2

评论数 0

【JAVA 并发】三 死锁范例与分析

避免 死锁的方法就是不要写 顺序不一致加锁 的代码 如果 必须要写顺序不一致的加锁的代码,可以采用 trylock 方法,避免程序一直等待。 预防 死锁可以采用finddebug插件去扫描代码发现死锁。 处理 死锁,如果运行中的程序已经发生死锁,据我所知没有别的办法,只能停止程序,代价非常大,所以...

2017-03-17 21:59:27

阅读数 70

评论数 0

【JAVA 并发】二 死锁

死锁 死锁:在计算机系统中有很多一次只能由一个进程使用的资源,如打印机,磁带机,一个文件的I节点等。在多道程序设计环境中,若干进程往往要共享这类资源,而且一个进程所需要的资源不止一个。这样,就会出现若干进程竞争有限资源,又推进顺序不当,从而构成无限期循环等待的局面。这种状态就是死锁。 简单理解死...

2017-03-17 16:37:40

阅读数 176

评论数 0

【JAVA 并发】一 同步访问共享的可变数据

不要使用Thread.stop()因为unsafe , 要停止一个线程 , 建议的做法一个线程轮询 一个boolean域 . public class StopThread{ private static boolean stopRequested ; public static vo...

2016-09-05 16:04:45

阅读数 188

评论数 0

【JAVA】十二 接口 与 四种内部类

类的访问权限 可变性最小化 不要提供任何会修改对象状态的方法 我可以工地不会被扩展 使所有域都是final 使所有的域都成为怎么私

2016-09-05 09:40:29

阅读数 83

评论数 0

【JAVA】十一 对象通用方法

Java超级父类 Object 的非final方法 equals hashCode toString clone finalize 都有着明确通用的约定 general contract , 因为他们被设计成为 override . equals什么情况下覆盖equals方法 类的每个实例本子上...

2016-09-01 14:10:13

阅读数 128

评论数 0

idea maven 部署服务器tomcat

软件及版本idea 版本 IntelliJ IDEA 2016.1.2 maven 版本 Apache Maven 3.2.5 tomcat 版本 Apache Tomcat 8.0.36Tomcat 配置远程服务器中就一个tomcat 由要用到tomcat用户的权限,修改文件 /co...

2016-08-31 17:20:28

阅读数 490

评论数 0

【JAVA】十 创建对象与销毁对象

一 静态工厂代替构造方法static factory method 是一个返回类实例的静态方法来看看jdk的boolean类的封装 public static Boolean valueOf(boolean b) { return (b ? TRUE : FALSE); ...

2016-08-23 16:03:21

阅读数 1301

评论数 0

【数据结构与算法】十九 二叉树遍历 BFS 广度优先 迭代算法

【数据结构与算法】十九 二叉树遍历 BFS 广度优先 迭代算法DFS - Depth First Search 迭代算法上一篇我们DFS , 深度优先算法往往使用栈来实现 , 通过栈来保存过去走过的路线 , 这样将可以回来继续知道路线, 接下来我们来使用一个队列来实现一个广度优先的算法 , 对一个...

2016-07-13 00:22:14

阅读数 341

评论数 0

【数据结构与算法】十八 二叉树遍历 DFS 深度优先 迭代算法

【数据结构与算法】十八 二叉树遍历 DFS 深度优先 迭代算法DFS - Depth-First-Search 迭代算法栈是实现递归的最常用的结构,利用一个栈来记下尚待遍历的结点或子树,以备以后访问,可以将递归的深度优先遍历改为迭代的算法。 非递归前序遍历:遇到一个结点,就访问该结点,并把此结点推...

2016-07-08 23:56:03

阅读数 593

评论数 0

【数据结构与算法】十六 二叉树遍历 Breadth-First-Search 广度优先

【数据结构与算法】十六 二叉树遍历 Breadth-First-Search 广度优先 Breadth-First-Search 广度优先 , 广度优先遍历是连通图的一种遍历策略。因为它的思想是从一个顶点V0开始,辐射状地优先遍历其周围较广的区域,故得名。 以层为单位进行遍历.如图 ...

2016-06-21 22:07:23

阅读数 11

评论数 0

【JAVA】九 TreeMap

【JAVA】九 TreeMapJDK APIjava.utilClass TreeMapTreeMap定义public class TreeMap<K,V> extends AbstractMap<K,V> implements NavigableMap&l...

2016-06-18 16:34:54

阅读数 149

评论数 0

【JAVA】八 HableMap HashTable

【JAVA】八 HableMap HashTable 本篇作为hashmap hashtable的一个小的简单介绍,我透过下面的表格大致的分析了这两个类, 如果你想深入了解的话可以点击下方的连接,会跳转到相应的介绍,那里介绍的更加详细些 . 功能 HashMap HashTa...

2016-06-04 19:21:58

阅读数 179

评论数 0

【JAVA】七 JAVA Dictionary 一 HashTable

【JAVA】七 JAVA Dictionary 一 Hashtable DK API java.util Class Dictionary Direct Known Subclasses: Hashtable Dictionary abstract class Dictio...

2016-06-04 19:09:38

阅读数 261

评论数 0

【JAVA】七 JAVA Dictionary 一 HashTable

hashtable hashmap dictionary

2016-06-01 23:44:20

阅读数 31

评论数 0

【JAVA】六 JAVA Map 一 HashMap

hashmap hash hashcode 重复 冲突

2016-06-01 00:01:10

阅读数 3137

评论数 0

【JAVA】五 JAVA集合 Collection Vector Stack

java Collection Vector Stack

2016-05-29 08:53:47

阅读数 210

评论数 0

【JAVA】四 JAVA集合 Collection ArrayList LinkedList

JAVA Collection ArrayList LinkedList

2016-05-24 00:06:06

阅读数 4001

评论数 0

文章标题

文章标题

2016-05-18 10:58:22

阅读数 3

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭