2 ms·
Seems like if you used processes to implement components and had a master process to respawn when a "component" dies then it is just assert() vs perror(). That
by luckydude 13y ago
Seems like if you used processes to implement components and had a master process to respawn when a "component" dies then it is just assert() vs perror().
That's hand waving past any shared state but if you need that I suppose you use threads (I'm not a thread fan but I have to believe there is a thread_assert() that kills just that thread).
- asveikau 13y agoIntroducing threads and multiple processes seems slightly crazy. Remember that ideally the most common case is no failure at all and you don't want to introduce cost for that. Why not just have the point of failure unwind the stack until it sees a component boundary? Without multiple address spaces certain types of failure would blow up the whole process but that's life.
- mcguire 13y agoThat's how Erlang OTP does it, IIUC.