Erlang / Erlang Advanced Interview questions
Why is exit/1 different from exit/2?
exit(Reason) (arity 1) terminates the calling process itself with the given reason,
exactly like any other uncaught exception, and propagates that reason to any linked processes.
exit(Pid, Reason) (arity 2) instead sends an exit signal to another process, asking it to
terminate, without affecting the caller at all.
exit(normal). %% terminates the current process exit(OtherPid, kill). %% asks OtherPid to terminate; caller keeps running
A special case worth knowing: exit(Pid, kill) sends the untrappable reason kill,
which forces termination even if the target process is trapping exits — every other exit reason can be
intercepted via trap_exit, but kill always succeeds, making it the reliable
"stop this process no matter what" tool when a normal shutdown request might be ignored or delayed.
Invest now in Acorns!!! 🚀
Join Acorns and get your $5 bonus!
Acorns is a micro-investing app that automatically invests your "spare change" from daily purchases into diversified, expert-built portfolios of ETFs. It is designed for beginners, allowing you to start investing with as little as $5. The service automates saving and investing. Disclosure: I may receive a referral bonus.
Invest now!!! Get Free equity stock (US, UK only)!
Use Robinhood app to invest in stocks. It is safe and secure. Use the Referral link to claim your free stock when you sign up!.
The Robinhood app makes it easy to trade stocks, crypto and more.
Webull! Receive free stock by signing up using the link: Webull signup.
More Related questions...
