作业控制程序 LibChildControl

码农软件 · 软件分类 · 作业/任务调度 · 2019-09-04 23:43:27

软件介绍

LibChildControl 能创建一个线程来管理子进程,并且在失败的时候重启他们。

使用示例:

int child_process (void *data)
{
    int id = *(int *)data;
    int delay = (id + 1) * 1000;

    printf ("TEST: Start child %d.\n", id);

    int i;
    for (i = 0; i < nb_loops; i++) {

        printf ("TEST: Child %d is working (loop %d/%d)\n", id, i + 1, nb_loops);

        int j;
        float r = 0;
        for (j = 0; j < 100 * id; j++) {
            float x = 0;
            do
                x = (float) rand () / ((float)RAND_MAX + 1);
            while (x == 0);
            float y = (float) rand () / ((float)RAND_MAX + 1);
            float z = sqrtf (-2. * logf (x)) * cosf (2 * M_PI * y);
            r += z * (1 << 31);
            usleep (1000);
        }
    }
    
    kill (getpid (), SIGTERM);

    return 0;
}


int child_term (void *data)
{
    int id = *(int *)data;
    printf ("TEST: Child %d is dieing.\n", id);
    return 0;
}

#define nb_children 2
#define nb_loops    10

int main (int argc, char *argv[])
{
    int d[nb_children];
    int i;
    for (i = 0; i < nb_children; i++) {
        d[i] = i + 1;
        register_child (i + 1, NULL, NULL, child_process, child_term, (void *)(d + i));
    }

    sleep (100);

    return 0;
}

本文地址:https://codercto.com/soft/d/13899.html

社会再平衡

社会再平衡

[加] 亨利·明茨伯格 / 陆维东、鲁强 / 东方出版社 / 2015-9 / 38.00元

明茨伯格曾坦言:我虽然不是律师,但我觉得有必要质疑法律的失效;我也不算是经济学家,但我觉得有义务来挑战一切事物以经济为指标的标准;我也不是人类学家、社会学家、心理学家,或者政治科学,更不是活动分子,但是在我的讨论中,文化、行为、权力、社会运动都扮演了重要的角色。我是一个合成者,我最成功的书都囊括了不同来源的想法。 明茨伯格创作《社会再平衡》这本书的初衷是因为关注身边的趋势:环境的恶化、民主的......一起来看看 《社会再平衡》 这本书的介绍吧!

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具