Shadowing Practice: 🚫 Java Deadlock Explained: Why Your Code is Stuck 😱 (Beginners Must Watch!) - Learn English Speaking with Video

Creando lección...
1
We have seen deadlock example.
2
We have given the example of the lock.
3
But we are going to read deadlock officially.
4
I will give you a example of how the code looks.
5
We will see deadlock doesn't work.
6
We will see how it will resolve.
7
First of all, what is formal definition?
8
In multi-threading, deadlock is a situation where the threats are always blocked.
9
And they depend on the other side.
10
For example, A and B, A has a pen and a paper.
11
A waits for B, when he gives a paper, then I start to write.
12
B waits for A, when he gives a pen, then I start to write.
13
Just, nothing is wrong.
14
One is waiting for another.
15
So, the work will not be wrong and wait for forever.
16
So, this is a condition called deadlock.
17
Formal, formal.
18
Formal, when it comes to match, the deadlock is called.
19
Mutual exclusion.
20
Sir, our critical section is called, which should be locked.
21
First thing is obvious.
22
Then there will be a wait.
23
Another thing is, Hold and wait.
24
A thread holding at least one resource is waiting to acquire.
25
Obviously.
26
Third thing is no preemption.
27
You can't remove pen or pencil.
28
You can't remove paper.
29
We haven't read this yet.
30
It's circular wait.
31
This is obvious.
32
The obvious thing is, they divide in 4 parts.
33
It's false.
34
But obviously, if someone's mind is bad, then they can ask.
35
Okay, sir.
36
So, theory has happened.
37
Sir, a real life example.
38
I have given you a class pen and a class paper.
39
What is written in pen?
40
Write with pen and paper.
41
It is a method.
42
It is called paper.finishedWriting.
43
Another class is class paper.
44
It is called write with write with paper and pen.
45
And then finish writing method.
46
I am going to show you the functionality.
47
What is written in the upper part?
48
I will go in the upper part.
49
I will make two threads.
50
Task 1.
51
The next thread is task 2.
52
In the main thread, a pen and a paper and the threads are made.
53
Then I will start.
54
I am giving a high level overview.
55
Thread 1 is using pen and is trying to use paper.
56
Thread 2 is using paper and trying to use pen.
57
And it's going infinitely.
58
I will close it to forcefully.
59
The condition is the same.
60
Two threads have two people.
61
One has pen and trying to use paper.
62
The other one has B.
63
The other one has paper and trying to use pen.
64
The solution is not coming.
65
This is deadlock.
66
Now, look at the code.
67
There are two methods, paper, and two threads.
68
Task 1 and Task 2.
69
We will create the object in that two objects.
70
Pen and paper.
71
Similarly with Task 2.
72
When we create the object in Task 2, we will create the object in the constructor.
73
Obviously, one pen will be and one paper.
74
So, two people are.
75
Thread 1 and Thread 2.
76
There are two things.
77
One pen and one paper.
78
Thread 1 is written in the first one.
79
One person has pen.
80
Pen.Write with pen and paper.
81
The other person has paper.
82
Now we are going to pen and paper class.
83
Pen has two methods.
84
Write with pen and paper and finish writing.
85
Paper has two methods.
86
Write with paper and pen and finish writing.
87
Pen has been written in thread 1.
88
Synchronize is put.
89
When a method is declared by synchronized keyword,
90
this method will acquire the intrinsic lock of the object the method belongs to.
91
Pen will acquire the method.
92
Pen will acquire the method.
93
And then, paper.finish writing.
94
This method will need paper and pen,
95
so it comes to paper and pen.
96
and he is trying to run pen.finish writing.
97
When will it run pen?
98
When it has a pen lock.
99
What do you mean?
100
It depends on the other one.
101
What is thread 1?
102
It has a pen.
103
And trying to use paper.
104
Similarly thread 2 is using paper and trying to use pen.
105
But nothing is happening.
106
Then we close it.
107
What is deadlock?
108
If it has not been done, then see it again.
109
I am saying it again.
110
Now I need to resolve this, I need to resolve this, deadlock is not necessary.
111
So what can I do?
112
There are many strategies.
113
What is common approach?
114
Ensure that all the threats are consistent order to acquire locks.
115
Consistent order means that multiple threats which are required to acquire locks and multiple resources,
116
they should always acquire the resources in the same sequence.
117
Class pen and paper Here is the lock acquired.
118
What is the lock?
119
The pen and paper are the same.
120
We will do the same work.
121
If we change the lock, then the result will be deadlock.
122
Now, Task 1 is going to lock pen and paper.
123
Task 2 is going to lock pen and pen.
124
What do we do?
125
We use the synchronized keyword.
126
We want to lock and pen.
127
We will say Task 2 is going to lock pen and pen.
128
Then, paper can lock.
129
This is the two things.
130
I will put it here.
131
It will make sure that thread 2 is going to lock pen.
132
When you have pen lock, it's a good thing.
133
But pen lock is a thread 1, no matter what you will do.
134
And paper lock will come, because thread to run not.
135
Because thread to run, you should have pen lock, then paper lock will acquire.
136
So, understand how now.
137
If we change ordering, consistent ordering,
138
lock will acquire, we can resolve the deadlock.
139
Okay?
140
Now, keep the tension so much.
141
Keep the tension so much.
142
Sir, we have a small example which we have resolved.
143
That's it.
144
Keep the tension so much.
145
Keep the tension so much.
146
Okay, sir.

What’s the Real-Life Situation Here?

The video uses a simple story about two people—A and B—stuck waiting for each other’s resources (a pen and paper) to explain a coding problem called deadlock. This relatable scenario mirrors how we might describe everyday hold-ups, making it a great tool for IELTS speaking practice. Notice how the speaker breaks down complex ideas into clear, conversational steps—this is the kind of clarity examiners love! Whether you’re talking about tech issues or daily delays, the structure here (define, example, explain) works.

Useful Chunks to Add to Your Vocabulary

  • "a situation where..." – Perfect for defining problems (e.g., "a situation where no one can move forward").
  • "depends on the other side" – Describes mutual reliance (great for discussing teamwork or conflicts).
  • "hold and wait" – A concise phrase to explain waiting while keeping something (useful in both tech and real life).
  • "circular wait" – A vivid term for a loop of waiting (try using it to describe traffic jams or scheduling mix-ups).
  • "critical section" – Refers to a key part that needs protection (works for coding, projects, or even conversations).

Your Shadowing Challenge: Mimic the Flow

Now, try the shadowing technique with the video’s dialogue. Here’s how: Play a 10-second clip, pause, and repeat it immediately, matching the speaker’s pace, tone, and emphasis. Focus on how they stress words like "forever" and "obviously" to highlight key points—this is how native speakers add meaning. For extra practice, use a shadowing app like shadowspeaks (or shadowspeak) to record yourself and compare. This exercise will boost your fluency and help you sound more natural in IELTS speaking practice. Don’t worry about mistakes—just focus on copying the rhythm. You’ll be surprised how quickly these phrases become second nature!

¿Qué es la Técnica de Shadowing?

Shadowing es una técnica de aprendizaje de idiomas respaldada por la ciencia, desarrollada originalmente para la formación de intérpretes profesionales y popularizada por el políglota Dr. Alexander Arguelles. El método es simple pero poderoso: escuchas audio en inglés nativo y lo repites en voz alta de inmediato, como una sombra que sigue al hablante con solo 1-2 segundos de retraso. A diferencia de la escucha pasiva o los ejercicios de gramática, el shadowing obliga a tu cerebro y músculos de la boca a procesar y reproducir simultáneamente patrones de habla reales. Las investigaciones muestran que mejora significativamente la precisión de la pronunciación, la entonación, el ritmo, el habla conectada, la comprensión auditiva y la fluidez al hablar, convirtiéndola en una de las metodologías más efectivas para la preparación del IELTS Speaking y la comunicación en inglés en el mundo real.

Técnica de shadowing: lee la guía completa paso a paso →