跟读练习: 🚫 Java Deadlock Explained: Why Your Code is Stuck 😱 (Beginners Must Watch!) - 通过视频学习英语口语

正在创建课程...
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.

本片段的口语练习目标

这段视频不仅能帮你了解编程知识,更是提升英语口语流畅度的好素材。它的语速适中,逻辑清晰,适合练习信息类表达的条理性——如何用简洁的语言解释复杂概念(比如“死锁”),如何通过举例让描述更生动。这正是英语口语练习中关键的“说明性表达”能力,能帮你在工作或学习场景中更准确地传递信息。

实用短语库

  • “a situation where...”:用来定义某种情况,比如“deadlock is a situation where the threads are always blocked”(死锁是线程一直被阻塞的情况)。
  • “for example”:举例时的常用过渡词,视频中多次用它来解释抽象概念,让表达更易懂。
  • “first of all”、“then”、“third thing is”:逻辑连接词,能让你的叙述更有层次,适合在说明步骤或条件时使用。
  • “it is called”:用于介绍术语,比如“this is a condition called deadlock”(这种情况被称为死锁)。

攻克口语弱点

视频中存在不少连读和弱读现象,比如“waiting for”会读成“waitin' for”,“acquire”的重音在第二音节。这些细节容易被忽略,但却是影响口语地道性的关键。建议用shadow speech(影子跟读)的方式练习:播放一句,暂停,立刻跟读,模仿发音和节奏。你可以找一个合适的shadowing site,反复操练这些片段。此外,视频中“formal definition”、“critical section”等专业词汇的发音也需要注意,通过跟读能让你在使用这些词时更自信。坚持这样的英语口语练习,你的听力和口语流畅度都会显著提升。

什么是跟读法?

跟读法 (Shadowing) 是一种有科学依据的语言学习技巧,最初开发用于专业口译员的培训,并由多语言者Alexander Arguelles博士普及。这个方法简单而强大:您在听英语母语原声的同时立即大声重复——就像是一个延迟1-2秒紧跟说话者的影子。与被动听力或语法练习不同,跟读法强迫您的大脑和口腔肌肉同时处理并模仿真实的讲话模式。研究表明它能显着提高发音准确性,语调,节奏,连读,听力理解和口语流利度——使其成为雅思口语备考和真实英语交流最有效的方法之一。

影子跟读法: 阅读完整分步指南 →