关于 execlp()和 waitpid()的一个问题

zxCoder:我在读一个 OJ 判题核心的代码,里面关于特判的代码,fork 了一个子进程,调用 execlp()去执行 spj,没有报错,但是父进程里 waitpid()就报错了,返回值是-1,错误码 10,no child processes,这是怎么回事

    int status = 0;
    pid_t pid_spj = fork();
    if (pid_spj < 0) {
        LOG_WARNING("error for spj failed, %d:%s", errno, strerror(errno));
        output_result(judge_conf::OJ_SE, -errno, judge_conf::EXIT_COMPARE_SPJ_FORK);
        exit(judge_conf::EXIT_COMPARE_SPJ_FORK);
    } else if (pid_spj == 0) {
        freopen(file_spj.c_str(), "w", stdout);
        if (EXIT_SUCCESS == malarm(ITIMER_REAL, judge_conf::spj_time_limit)) {
            log_close();
            if (execlp((spj_path + "/" + problem::spj_exe_file).c_str(),
                       problem::spj_exe_file.c_str(), input_file.c_str(),
                       output_file.c_str(), output_file_std.c_str(), NULL) < 0) {
                printf("spj execlp error\n");
            }
        }
    } else {
        //no child process
        if (waitpid(pid_spj, &status, 0) < 0) {
            LOG_BUG("waitpid failed, %d:%s", errno, strerror(errno));
            output_result(judge_conf::OJ_SE, -errno, judge_conf::EXIT_COMPARE_SPJ_WAIT);
            exit(judge_conf::EXIT_COMPARE_SPJ_WAIT);
        }
    }

关于 currenttime 的问题

aglsv:我直接写了个 var t = audio.currenttime 时。t 的值一直是零,写在 ontimeupdate 函数里的时候就能正常返回值 不过 console 里会提示 GET http://127.0.0.1:5502/favicon.ico 404 (Not Found)但是不影响 想问问原因

Gmail 和 Outlook 相互伤害

ttgo:Outlook 的通知邮件(比如未读消息 /任务到期),转发到 Gmail 的话,全部会被拒收。 而从 Gmail 返回来的通知发送失败的那封邮件,Outlook 又会标记为垃圾邮件,不动声色的将其扔进垃圾箱。 真是尼玛,神仙打架、互相伤害。

关于 Online Judge 判题沙箱的学习问题

zxCoder:想从头造一个轮子,写一个 OJ 系统,其他 web 开发和业务逻辑相关的因为打过比赛比较清楚,但是判题这部分几乎没有任何基础,想问一下应该如何从零学起?是不是对系统底层,操作系统,系统安全这些方面要求很高? 或者目前有没有比较完善安全的这种判题器?

关于 severless 的疑问和痛点

fanyingmao:短暂入职了一家公司使用 aws 的 lambda 开发的,离职的原因之一就是用了 lambada 这个我不了解的技术,跑路的原因之一是感觉用了这个技术会降低我的开发效率。 1 、一个接口调用 severless 运行需要将所有函数接口代码加载到内存,运行玩之后就释放,还有对于数据库之类的连接就不是用连接池的方式要不断创建断开,这样运行效…

itx 和 matx ,黑苹果的纠结

monkeydev:目前有一台 3950X + vega 64 的台式机,本来想买 iMac,感觉价格高了,所以想再买台 intel 家的电脑,既可以 win 压片,也可以黑苹果但是现在面临一个选择困难症2009 年读大学的时候,就像组套 itx,但一直没有,但是现成的有个 atx 的 evga 750 的电源,又不舍得放弃心水的乔斯伯 V8 又不支持 it…