Go to the latest version of this document.

# ``twisted`.`application`.`runner`.`_pidfile`.`IPIDFile``

interface documentation

`class IPIDFile(Interface): (source)`

Known implementations: `twisted.application.runner._pidfile.NonePIDFile`, `twisted.application.runner._pidfile.PIDFile`

View In Hierarchy

Manages a file that remembers a process ID.

Method | `__enter__` | Enter a context using this PIDFile.
Method | `__exit__` | Exit a context using this PIDFile.
Method | `isRunning` | Determine whether there is a running process corresponding to the PID in this PID file.
Method | `read` | Read the process ID stored in this PID file.
Method | `remove` | Remove this PID file.
Method | `writeRunningPID` | Store the PID of the current process in this PID file.

def __enter__() -> `IPIDFile`: (source)

Enter a context using this PIDFile.

Writes the PID file with the PID of the running process.

Raises
`AlreadyRunningError` | A process corresponding to the PID in this PID file is already running.

def __exit__(excType: `type[BaseException] | None`, excValue: `BaseException | None`, traceback: `TracebackType | None`) -> `bool | None`: (source)

Exit a context using this PIDFile.

Removes the PID file.

def isRunning() -> `bool`: (source)

Determine whether there is a running process corresponding to the PID in this PID file.

Returns
`bool` | True if this PID file contains a PID and a process with that PID is currently running; false otherwise.

Raises
`EnvironmentError` | If this PID file cannot be read.
`InvalidPIDFileError` | If this PID file's content is invalid.
`StalePIDFileError` | If this PID file's content refers to a PID for which there is no corresponding running process.

def read() -> `int`: (source)

Read the process ID stored in this PID file.

Returns
`int` | The contained process ID.

Raises
`NoPIDFound` | If this PID file does not exist.
`EnvironmentError` | If this PID file cannot be read.
`ValueError` | If this PID file's content is invalid.

def remove(): (source)

Remove this PID file.

Raises
`EnvironmentError` | If this PID file cannot be removed.

def writeRunningPID(): (source)

Store the PID of the current process in this PID file.

Raises
`EnvironmentError` | If this PID file cannot be written.