我使用在Linux上作为守护进程运行一个Java程序。
守护进程“随机”崩溃,只显示以下消息:
jsvc.exec error: Service did not exit cleanly
这是jsvc ()中代码的相关部分:
while (waitpid(pid, &status, 0) != pid) {
/* Waith for process */
}
/* The child must have exited cleanly */
if (WIFEXITED(status)) {
status = WEXITSTATUS(status);
// Cl
Python多处理池在Linux和Windows之间有不同的行为。
当按工作人员的数量运行方法时,在Linux中它运行的是作为参数给定的特定函数的作用域上的进程,但是在Windows中,每个工作人员在父进程的范围内运行,并再次使用它不应该使用的代码。
例如:(只用于使其与我的代码类似)
from multiprocessing import Pool, Event
from flask import Flask
print(">>> This code running for every each worker")
app = Flask(__name__
我的代码中有这一行:
t = wait(&status);
当子进程工作时,status的值为0,很好。
但是为什么它在不工作的时候返回256呢?当出现错误时,为什么更改子进程中为exit指定的参数值不会改变任何东西(例如,exit(2)而不是exit(1) )?
谢谢
编辑:我在linux上,和GCC一起编译。
我这样定义状态
int status;
t = wait(&status);