[ Tcllib Home | Main Table Of Contents | Table Of Contents | Keyword Index | Categories | Modules | Applications ]

# processman(n) 0.8 tcllib "processman"

## Name

processman - Tool for automating the period callback of commands

## Synopsis

- package require Tcl 8.5 9
- package require twapi 3.1
- package require cron 1.1
- package require processman ?0.8?

- ::processman::find_exe name
- ::processman::kill id
- ::processman::kill_all
- ::processman::killexe name
- ::processman::onexit id cmd
- ::processman::priority id level
- ::processman::process_list
- ::processman::process_list id
- ::processman::spawn id cmd args

## Description

The processman package provides a Pure-tcl set of utilities to manage child processes in a platform-generic nature.

## Commands

::processman::find_exe name

  Locate an executable by the name of name in the system path. On windows, also add the .exe extention if not given.

::processman::kill id

  Kill a child process id.

::processman::kill_all

  Kill all processes spawned by this program

::processman::killexe name

  Kill a process identified by the executable. On Unix, this triggers a killall. On windows, twapi::get_process_ids is used to map a name one or more IDs, which are then killed.

::processman::onexit id cmd

  Arrange to execute the script cmd when this programe detects that process id as terminated.

::processman::priority id level

  Mark process id with the priorty level. Valid levels: low, high, default.

  On Unix, the process is tagged using the nice command.

  On Windows, the process is modifed via the twapi::set_priority_class

::processman::process_list

  Return a list of processes that have been triggered by this program, as well as a boolean flag to indicate if the process is still running.

::processman::process_list id

  Return true if process id is still running, false otherwise.

::processman::spawn id cmd args

  Start a child process, identified by id. cmd is the name of the command to execute. args are arguments to pass to that command.

## Bugs, Ideas, Feedback

This document, and the package it describes, will undoubtedly contain bugs and other problems. Please report such in the category odie of the Tcllib Trackers. Please also report any ideas for enhancements you may have for either package and/or documentation.

When proposing code changes, please provide unified diffs, i.e the output of diff -u.

Note further that attachments are strongly preferred over inlined patches. Attachments can be made by going to the Edit form of the ticket immediately after its creation, and then using the left-most button in the secondary navigation bar.

## Keywords

odie, processman

## Category

System

## Copyright

Copyright © 2015 Sean Woods <yoda@etoyoc.com>