In this series of simulating and troubleshooting performance problems in Scala, let’s discuss how to make threads go into BLOCKED state. A thread will enter into a BLOCKED state when it couldn’t acquire a lock on an object because another thread already holds the lock on the same object and doesn’t release it. Video: To... Continue Reading →
Chaos Engineering – Blocked Threads
In the series of chaos engineering articles, we have been learning to simulate various performance problems. In this post, let's discuss how to make threads go into BLOCKED state. Sample Program Here is a sample program from open source BuggyApp application, which would make threads go into BLOCKED state. A thread will enter into a... Continue Reading →
Chaos Engineering – Deadlock
In the series of chaos engineering articles, we have been learning to simulate various performance problems. In this post, let's discuss how to simulate deadlock. What is Deadlock? Deadlock is prone in multi-threaded applications. The technical definition of a 'Deadlock' goes like this: Deadlock is a situation where a set of processes are blocked because... Continue Reading →