ProcfsBasedProcessTree (Hadoop 0.20.2+737 API)
Date: 2010-10-11

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.hadoop.util
Class ProcfsBasedProcessTree

    java.lang.Object
      org.apache.hadoop.util.ProcessTree
          org.apache.hadoop.util.ProcfsBasedProcessTree

    public class ProcfsBasedProcessTree

extends ProcessTree

A Proc file-system based ProcessTree. Works only on Linux.

Field Summary
`static long` | `DEFAULT_SLEEPTIME_BEFORE_SIGKILL`

Fields inherited from class org.apache.hadoop.util.ProcessTree
`isSetsidAvailable`

Constructor Summary
`ProcfsBasedProcessTree(String pid)`
`ProcfsBasedProcessTree(String pid, boolean setsidUsed, long sigkillInterval)`
`ProcfsBasedProcessTree(String pid, String procfsDir)`

Method Summary
`static void` | `assertAndDestroyProcessGroup(String pgrpId, long interval, boolean inBackground)` Make sure that the given pid is a process group leader and then destroy the process group.
`void` | `destroy()` Destroy the process-tree.
`void` | `destroy(boolean inBackground)` Destroy the process-tree.
`long` | `getCumulativeVmem()` Get the cumulative virtual memory used by all the processes in the process-tree.
`long` | `getCumulativeVmem(int olderThanAge)` Get the cumulative virtual memory used by all the processes in the process-tree that are older than the passed in age.
`ProcfsBasedProcessTree` | `getProcessTree()` Get the process-tree with latest state.
`String` | `getProcessTreeDump()` Get a dump of the process-tree.
`boolean` | `isAlive()` Is the root-process alive?
`boolean` | `isAnyProcessInTreeAlive()` Is any of the subprocesses in the process-tree alive?
`static boolean` | `isAvailable()` Checks if the ProcfsBasedProcessTree is available on this system.
`void` | `setSigKillInterval(long interval)` Deprecated. Use `ProcfsBasedProcessTree( String, boolean, long)` instead
`String` | `toString()` Returns a string printing PIDs of process present in the ProcfsBasedProcessTree.

Methods inherited from class org.apache.hadoop.util.ProcessTree
`destroy, destroyProcess, destroyProcessGroup, isAlive, isProcessGroupAlive, killProcess, killProcessGroup, terminateProcess, terminateProcessGroup`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### DEFAULT_SLEEPTIME_BEFORE_SIGKILL

    public static final long DEFAULT_SLEEPTIME_BEFORE_SIGKILL

See Also:
  Constant Field Values

Constructor Detail

### ProcfsBasedProcessTree

    public ProcfsBasedProcessTree(String pid)

### ProcfsBasedProcessTree

    public ProcfsBasedProcessTree(String pid,
                                  boolean setsidUsed,
                                  long sigkillInterval)

### ProcfsBasedProcessTree

    public ProcfsBasedProcessTree(String pid,
                                  String procfsDir)

Method Detail

### setSigKillInterval

    public void setSigKillInterval(long interval)

  Deprecated. Use `ProcfsBasedProcessTree( String, boolean, long)` instead

  Sets SIGKILL interval

  Parameters:
    `interval` - The time to wait before sending SIGKILL after sending SIGTERM

### isAvailable

    public static boolean isAvailable()

  Checks if the ProcfsBasedProcessTree is available on this system.

  Returns:
    true if ProcfsBasedProcessTree is available. False otherwise.

### getProcessTree

    public ProcfsBasedProcessTree getProcessTree()

  Get the process-tree with latest state. If the root-process is not alive, an empty tree will be returned.

  Returns:
    the process-tree with latest state.

### isAlive

    public boolean isAlive()

  Is the root-process alive?

  Returns:
    true if the root-process is alive, false otherwise.

### isAnyProcessInTreeAlive

    public boolean isAnyProcessInTreeAlive()

  Is any of the subprocesses in the process-tree alive?

  Returns:
    true if any of the processes in the process-tree is alive, false otherwise.

### assertAndDestroyProcessGroup

    public static void assertAndDestroyProcessGroup(String pgrpId,
                                                    long interval,
                                                    boolean inBackground)
                                             throws IOException

  Make sure that the given pid is a process group leader and then destroy the process group.

  Parameters:
    `pgrpId` - Process group id of to-be-killed-processes
    `interval` - The time to wait before sending SIGKILL after sending SIGTERM
    `inBackground` - Process is to be killed in the back ground with a separate thread
  Throws:
    `IOException`

### destroy

    public void destroy()

  Destroy the process-tree.

### destroy

    public void destroy(boolean inBackground)

  Destroy the process-tree.

  Parameters:
    `inBackground` - Process is to be killed in the back ground with a separate thread

### getProcessTreeDump

    public String getProcessTreeDump()

  Get a dump of the process-tree.

  Returns:
    a string concatenating the dump of information of all the processes in the process-tree

### getCumulativeVmem

    public long getCumulativeVmem()

  Get the cumulative virtual memory used by all the processes in the process-tree.

  Returns:
    cumulative virtual memory used by the process-tree in bytes.

### getCumulativeVmem

    public long getCumulativeVmem(int olderThanAge)

  Get the cumulative virtual memory used by all the processes in the process-tree that are older than the passed in age.

  Parameters:
    `olderThanAge` - processes above this age are included in the memory addition
  Returns:
    cumulative virtual memory used by the process-tree in bytes, for processes older than this age.

### toString

    public String toString()

  Returns a string printing PIDs of process present in the ProcfsBasedProcessTree. Output format : [pid pid ..]

  Overrides:
    `toString` in class `Object`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2009 The Apache Software Foundation