示例#1
0
int remove_process(struct process_group *pgroup, int pid)
{
	int hashkey = pid_hashfn(pid);
	if (pgroup->proctable[hashkey] == NULL) return 1; //nothing to delete
	struct list_node *node = (struct list_node*)locate_node(pgroup->proctable[hashkey], &pid);
	if (node == NULL) return 2;
	delete_node(pgroup->proctable[hashkey], node);
	return 0;
}
示例#2
0
文件: bst.c 项目: FenilKavathia/p2p
void locate_node(bst *node, int data)
{
  if(node == NULL)
    return;

  if(node->data == data)
  {
    printf("\nLocated node %d\n", data);
    return;
  }
 
  if(data < node->data)
  {
    printf("\nGoing left of %d\n", node->data);
    locate_node(node->left, data);
  }

  if(data >= node->data)
  {
    printf("\nGoing right of %d\n", node->data);
    locate_node(node->right, data);
  }
}
示例#3
0
文件: bst.c 项目: FenilKavathia/p2p
void trace_node(int data)
{
  locate_node(root, data);   
}