4 ms·
Erlang's use of m:n threading is orthogonal to fault-tolerance (perhaps not inside the implementation, but conceptually).
by blattimwind 7y ago
Erlang's use of m:n threading is orthogonal to fault-tolerance (perhaps not inside the implementation, but conceptually).
- StreamBright 7y agoIf an Erlang process crash cannot crash the entire system while Bastion's concept of a process can then threading is important part of fault-tolerance, isn't it?
- elteto 7y agoIt definitely is not orthogonal. Suppose an OS thread goes into an infinite loop. How do you cleanly stop it (feel free to assume Linux/Windows/MacOS)?. In Erlang this is possible because of the custom threading implementation.
- zzzcpan 7y agoIt's because of the vm interpreter that calls into the scheduler within loop iterations. Nothing to do with threads.
- blattimwind 7y agoIn Erlang that's possible because the program runs in a VM. Erlang could do the same with 1:1 and m:1 threading.
- saagarjha 7y ago> Suppose an OS thread goes into an infinite loop. How do you cleanly stop it (feel free to assume Linux/Windows/MacOS)? ptrace it?
- chrisseaton 7y ago> How do you cleanly stop it The JVM manages this - there are many options: - reading a flag - patching the running - changing memory protection and causing a segfault