Wenn ich eine Datei loop.exs
erstellen:Elixir "Losing" Prozesse
Enum.each(1..40000, fn (n) -> spawn fn -> IO.puts(n) end end)
und führen Sie es, die Linien der Ausgangs zählen:
elixir loop.exs | wc -l
Und auf den folgenden Durchläufen kann ich die erwartete sehen 40000
Linien, aber ich könnte weniger sehen. In meinen Tests habe ich 39752
, 39934
, 39673
usw. gesehen. Dies deutet darauf hin, dass bestimmte Prozesse nicht IO.puts
aufrufen, also was passiert mit ihnen, warum bin ich nicht gewarnt, dass sie verschwunden sind, und was mache ich falsch, dass dies geschieht?
@ Fuser97381 Dies ist die vollkommen gültige Antwort und Sie könnten Ihre Avatar-Präferenzen mit Ihren Mitbewohnern diskutieren. Hier auf SO sind Sie verpflichtet, die Frage als richtig zu markieren, sobald sie richtig ist. Ich habe Ihren Kommentar für die Aufmerksamkeit der Moderatoren markiert. – mudasobwa