User Tools

Site Tools


java:deadlock

This is an old revision of the document!


Αδιέξοδο στην χρήση των πόρων και πως να το αποφύγετε

Δείτε τον παρακάτω κώδικα

TreeNode.java
public class TreeNode {
 
  TreeNode parent   = null;  
  List     children = new ArrayList();
 
  public synchronized void addChild(TreeNode child){
    if(!this.children.contains(child)) {
      this.children.add(child);
      child.setParentOnly(this);
    }
  }
 
  public synchronized void addChildOnly(TreeNode child){
    if(!this.children.contains(child){
      this.children.add(child);
    }
  }
 
  public synchronized void setParent(TreeNode parent){
    this.parent = parent;
    parent.addChildOnly(this);
  }
 
  public synchronized void setParentOnly(TreeNode parent){
    this.parent = parent;
  }
 
  public static void main(String args[]) {
 
  }
}
java/deadlock.1427690275.txt.gz · Last modified: 2015/03/30 03:37 (external edit)