Communicating systems are everywhere
But as any other computer system they have bugs and occasionally fail
... bummer!
This thesis focuses on preventing two specific ways communicating systems might fail
💥
🙊🙉
Communication deadlocks
A
receive("B",x)
...
B
receive("A",x)
...
Communication deadlocks
A
...
B
receive("A",x)
...
out-of-memory errors
A
x = number_crunching()
send("B",x)
...
B
receive("A",x)
...
out-of-memory errors
A
x = 💥
send("B",x)
...
B
receive("A",x)
...
out-of-memory errors
A
B
receive("A",x)
...