`
sxysxy
  • 浏览: 216511 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

PHP的守护进程。可以用于列队处理一些需要延迟处理的功能

 
阅读更多

/**
* Kalon Daemon -> A Unix Daemon for PHP5
* This is a free daemon tool, you can use it anyway you like.
*
* NOTICE:
* 1:This tool must run in cli sapi, any other sapis will cause a
* KalonDaemonException thrown.so you need to use this tool in a
* command line interface,command such as: /path/to/php mydaemon.php
*
* 2:Daemon needs pcntl and posix extension support. Make sure your cli
* sapi has loaded these two extension.The posix is compiled in php by
* default, while pcntl must be compiled or dynamic load by yourself.
* Missing anyone of these extension will cause a KalonDaemonException
* thrown.
*
* USAGE:
*
*put the code below in mydaemon.php
*
require_once '/path/to/KalonDaemon.php';
declare(ticks = 1);
$toDo = $_SERVER['argv'][1];
$daemonConf = array('pidFilePath' => 'mydaemon.pid',
'verbose' => true);
function myHandler1()
{
sleep(5);
echo "This handler1 works./n";
}
function myHandler2()
{
echo "This handler2 works./n";
}
try {
$daemon = new KalonDaemon($daemonConf);
if ($toDo == 'start') {
$daemon->addSignalHandlerFunction(SIGUSR1, 'myHandler1');
$daemon->addSignalHandlerFunction(SIGUSR2, 'myHandler2');
$daemon->start();
for (;;) {
echo "running./n";
sleep(1000);
}
} elseif ($toDo == 'stop') {
$daemon->stop();
} else {
die("unknown action.");
}
} catch (KalonDaemonException $e) {
echo $e->getMessage();
echo "/n";
}
*
* then open a command shell:
* start daemon:
* /path/to/phpcli/php /path/to/mydaemon.php start
*
* stop daemon:
* /path/to/phpcli/php /path/to/mydaemon.php stop
*
*
*
* @author 玉面修罗 - Kalon
* @version 1.0
* @site: www.phpthink.com
* E-mail/MSN: xiuluo-999@163.com
*/

分享到:
评论

相关推荐

    易语言列队处理数据

    易语言列队处理数据源码,列队处理数据,子程序_列队处理

    实现单处理机下的进程调度程序

    (说明:新进程到来时插入到就绪队列的队尾,当进程P运行完一个时间片时,若同时有进程Q到达,则先在就绪队列队尾插入新到达的进程Q,之后再插入进程P) 实现动态优先级调度算法:可指定进程的初始优先级(优先级与...

    易语言列队处理数据源码.rar

    易语言列队处理数据源码.rar

    实验一 实现单处理机下的进程调度程序

    编写一个单处理机下的进程调度程序,模拟操作系统对进程的调度。 要求: 1.能够创建指定数量的进程,每个进程由一个进程控制块表示。 2.实现先来先服务调度算法:进程到达时间可由进程创建时间表示。 3.实现短作业...

    易语言源码易语言列队处理数据源码.rar

    易语言源码易语言列队处理数据源码.rar

    操作系统进程调度

    编写一个单处理机下的进程调度程序,模拟操作系统对进程的调度。 要求: 能够创建指定数量的进程,每个进程由一个进程控制块表示。 实现先来先服务调度算法:进程到达时间可由进程创建时间表示。 实现短作业优先...

    易语言列队处理数据源码-易语言

    易语言列队处理数据源码

    循环列队,数据结构

    数据结构循环列队代码 #include #include #define M 50 typedef struct { int e[M]; int front; int rear; }SeqQueue;

    操作系统-进程调度.doc

    采用轮转法进程调度算法进行调度(" "调度过程中,假设处于执行状态的进程不会阻塞),且每过counter个时间片,唤醒" "处于阻塞队列队首的进程。 " "三、实验内容 " "#include<stdio.h> " "#include<malloc.h> " "#...

    聚合客服V24.5.0+PC端插件V5.6.0开源版 增加语音转换时候列队功能

    亮点功能: ...1、增加语音转换时候列队功能 2、小程序客服接收消息优化 3、客服快捷消息支持图片模式 4、其他细节优化 版本号:5.6.0 - 插件 1、增加点击聊天内容图片放大功能 2、客户列表里色系优化

    操作系统课程设计,无限循环进程调度

    当前运行态进程时间片运行完毕之后依据其优先级将其插入到对应就绪队列队尾中,判断高优先级队列是否为空,不空则取其对头的进程继续运行,空则判断低优先级队列取进程运行(若高低优先级队列度为空演示程序退出结束...

    c++循环列队 初始化 入对 出队 销毁

    c++循环列队 初始化 入对 出队 销毁 疏忽了长度为5的限制 请自行添加

    商用车列队跟驰自动驾驶功能标准研究.pdf

    商用车列队跟驰自动驾驶功能标准研究.pdf

    stm32搭载ucosII消息列队的研究

    stm32搭载ucosII消息列队的研究 应用实例

    PHP队列系统

    (主要提供思路) 简单的队列系统执行队列端 队列服务器采用HTTPSQS 管理: 帮助:php Kernel/bin/queue.php help 启动所有队列:php Kernel/bin/queue.php start...停止指定队列:php Kernel/bin/queue.php stop xxxx

    时间片轮转法及优先数优先算法的进程调度管理程序

    本程序是采用时间片轮转法,优先数算法,可抢占性的进程调度管理程序。改程序采用C语言链指针对进程控制块进行列队的,希望课给做系统进程试验的兄弟姐妹一点启示!

    DOS系统下多任务列队处理C语言源程序.zip_C++

    在DOS系统本身是不支持多任务的。此源程序为在DOS下实现多任务的简单例程

    操作系统实验进程调度代码

    设计程序模拟进程的轮转法调度过程。假设初始状态为:有n个进程处于就绪...采用轮转法进程调度算法进行调度(调度过程中,假设处于执行状态的进程不会阻塞),且每过t个时间片系统释放资源,唤醒处于阻塞队列队首的进程。

    操作系统实验题

    采用轮转法进程调度算法进行调度(调度过程中,假设处于执行状态的进程不会阻塞),且每过t个时间片系统释放资源,唤醒处于阻塞队列队首的进程。 程序要求如下: 1).输出系统中进程的调度次序; 2).计算CPU利用率。

    call列队.rar

    call列队.rar

Global site tag (gtag.js) - Google Analytics