Ich habe ein Perl-Skript geerbt, das je nach Maschinenkonfiguration bei Aufrufen von fork
mit $? == 11
fehlschlägt.Fork schlägt mit "Ressource vorübergehend nicht verfügbar" fehl. Welche Ressource?
Nach errno.h
und variousposts, 11 EAGAIN
, das heißt „versuchen Sie es erneut“, weil einige Ressource vorübergehend nicht verfügbar war.
Gibt es eine Möglichkeit, um zu bestimmen, welche Ressource die Gabel verursacht auszufallen, andere als verschiedene Systemgrenzen eine nach der anderen zu erhöhen (open file descriptors, swap space oder Anzahl von allowable threads)?
Ein gegabelter Prozess ist ein vollständiger Klon des ursprünglichen Prozesses. Wenn Sie Ihren Prozess vor der Verzweigung profilieren, erhalten Sie einen Hinweis darauf, wie viele Ressourcen er verwendet. – alvits
Meinst du $! = 11? – ikegami
'Meinst du $! = 11?'. Eigentlich habe ich etwas falsch verstanden. Was ich hätte sagen sollen, ist, dass die Verzweigung erfolgreich ist, aber sofort mit dem Statuscode 11 endet, wie von "wait" gemeldet. – phonybone