2013-05-24 6 views
5

Wie wird die empfangen Nachricht intern in erlang Laufzeit implementiert?Erlang Nachricht erhalten - wie wird es intern gemacht?

Wenn der Prozess auf eine Nachricht wartet, hängt die Ausführung auf dem Empfang. Der Empfang erfolgt über blockierende IO oder asynchrone IO?

Wenn früher, dann bedeutet dies, dass der Betriebssystem-Thread blockiert ist und wenn viele Prozesse beim Empfang hängen, ist die Leistung wegen Thread-Kontextwechsel schlecht und kann auch die Thread-Begrenzung des Betriebssystems erreichen.

Antwort

5

Erlang-Prozesse entsprechen nicht OS-Threads oder Prozessen. Sie sind als interne Strukturen von Erlang VM implementiert und werden von Erlang VM geplant. Die Anzahl der OS-Threads, die standardmäßig von Erlang VM gestartet werden, entspricht der CPU-Nummer. Wenn der Erlang-Prozess auf eine Nachricht wartet, wird kein OS-Prozess oder -Thread blockiert.

+0

danke für die Erklärung –

Verwandte Themen