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…