Пример #1
0
/*
 * main loop, calls prompt forever
 */
int main(int argc, char **argv) {
	setup();
	while (1) {
		prompt();
		job_cleanup();
	}
}
Пример #2
0
static void __main_clean(int keeppid)
{
    if (g_c == NULL)
        return;

    job_cleanup();
    ly_db_close();
    ly_clc_ip_clean();
    ly_entity_store_destroy();
    ly_epoll_close();
    if (keeppid == 0)
        lyutil_remove_pid_file(g_c->pid_path, PROGRAM_NAME);
    if (g_c->conf_path)
        free(g_c->conf_path);
    if (g_c->log_path)
        free(g_c->log_path);
    if (g_c->db_name)
        free(g_c->db_name);
    if (g_c->db_user)
        free(g_c->db_user);
    if (g_c->db_pass)
        free(g_c->db_pass);
    if (g_c->clc_ip)
        free(g_c->clc_ip);
    if (g_c->clc_mcast_ip)
        free(g_c->clc_mcast_ip);
    if (g_c->clc_data_dir)
        free(g_c->clc_data_dir);
    lyxml_cleanup();
    logclose();
    free(g_c);
    return;
}
Пример #3
0
/*
 * Usage: jobs
 *   display status of jobs
 */
void builtin_jobs() {
	job_cleanup();
	job_t *j = root.n;
	job_t *r = job_recent();
	while (j != NULL) {
		printf("[%d]%s %s  %s\n", j->pid, ((j == r) ? "+" : "-") , fmt_job_state[j->state], j->line);
		j = j->n;
	}
}