diff options
author | redmatrix <git@macgirvin.com> | 2016-06-26 21:58:09 -0700 |
---|---|---|
committer | redmatrix <git@macgirvin.com> | 2016-06-26 21:58:09 -0700 |
commit | 2029b2b9ed0544d4559d7a918a0902587fd580bc (patch) | |
tree | 411b9a57406898bb52f4d14310c886332fee9d7e /Zotlabs/Daemon | |
parent | 900d8f3b0a1711bc9ffecca6f0006a7392075d6d (diff) | |
download | volse-hubzilla-2029b2b9ed0544d4559d7a918a0902587fd580bc.tar.gz volse-hubzilla-2029b2b9ed0544d4559d7a918a0902587fd580bc.tar.bz2 volse-hubzilla-2029b2b9ed0544d4559d7a918a0902587fd580bc.zip |
document the daemon classes
Diffstat (limited to 'Zotlabs/Daemon')
-rw-r--r-- | Zotlabs/Daemon/README.md | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/Zotlabs/Daemon/README.md b/Zotlabs/Daemon/README.md new file mode 100644 index 000000000..cb5b00a56 --- /dev/null +++ b/Zotlabs/Daemon/README.md @@ -0,0 +1,43 @@ +Daemon (background) Processes +============================= + + +This directory provides background tasks which are executed by a +command-line process and detached from normal web processing. + +Background tasks are invoked by calling + + + Zotlabs\Daemon\Master::Summon([ $cmd, $arg1, $argn... ]); + +The Master class loads the desired command file and passes the arguments. + + +To create a background task 'Foo' use the following template. + + <?php + + namespace Zotlabs\Daemon; + + class Foo { + + static public function run($argc,$argv) { + // do something + } + } + + +The Master class "summons" the command by creating an executable script +from the provided arguments, then it invokes "Release" to execute the script +detached from web processing. This process calls the static::run() function +with any command line arguments using the traditional argc, argv format. + +Please note: These are *real* $argc, $argv variables passed from the command +line, and not the parsed argc() and argv() functions/variables which were +obtained from parsing path components of the request URL by web processes. + +Background processes do not emit displayable output except through logs. They +should also not make any assumptions about their HTML and web environment +(as they do not have a web environment), particularly with respect to global +variables such as $_SERVER, $_REQUEST, $_GET, $_POST, $_COOKIES, and $_SESSION. + |