From 6528ebfe4928a90c6e1cc67ca25b289b7ae93ffc Mon Sep 17 00:00:00 2001 From: Nicolas Schodet Date: Tue, 3 Jun 2008 21:48:19 +0200 Subject: * host, digital/asserv/tools, digital/avr/modules: - cleaned up python scripts hierarchy. --- host/mex/mex/forked.py | 48 ------------------------------------------------ 1 file changed, 48 deletions(-) delete mode 100644 host/mex/mex/forked.py (limited to 'host/mex/mex/forked.py') diff --git a/host/mex/mex/forked.py b/host/mex/mex/forked.py deleted file mode 100644 index 9e72d7d3..00000000 --- a/host/mex/mex/forked.py +++ /dev/null @@ -1,48 +0,0 @@ -# mex - Messages exchange library. {{{ -# -# Copyright (C) 2008 Nicolas Schodet -# -# APBTeam: -# Web: http://apbteam.org/ -# Email: team AT apbteam DOT org -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# -# }}} -"""Run a function in a separate process.""" -import os, sys, signal - -class Forked: - """ - Usage: - - >>> f = Forked (function) - (function runs in background, in a separated process) - >>> f.kill () - (send the SIGTERM signal to the process) - """ - - def __init__ (self, function): - """Initialise, fork, and call the given function in the children - process.""" - self.pid = os.fork () - if self.pid == 0: - function () - sys.exit (0) - - def kill (self): - """Kill the forked function.""" - os.kill (self.pid, signal.SIGTERM) - os.waitpid (self.pid, 0) -- cgit v1.2.3