Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Latest commit

 

History

History
History
72 lines (51 loc) · 1.44 KB

File metadata and controls

72 lines (51 loc) · 1.44 KB
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
package javaThreadTesting;
public class Transaction implements Runnable{
public class BankAccount{
private int balance = 100;
public int getBalance(){
return balance;
}
public void withdraw(int amount){
balance-=amount;
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Transaction transact = new Transaction();
Thread one = new Thread(transact);
Thread two = new Thread(transact);
one.setName("Ryan");
two.setName("Monica");
one.start();
two.start();
}
private BankAccount baccount= new BankAccount();
@Override
public void run() {
// TODO Auto-generated method stub
for(int i=0; i<10; i++){
makeWithdraw();
if(baccount.getBalance() < 0){
System.out.println("Overdrawn!");
}
}
}
private void makeWithdraw() {
if(baccount.getBalance()>= 10){
System.out.println(Thread.currentThread().getName() + " is about to withdraw.");
// change the place of sleep
try {
System.out.println(Thread.currentThread().getName()+" is going to sleep");
Thread.sleep(1);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(Thread.currentThread().getName() +" woke up.");
baccount.withdraw(10);
System.out.println(Thread.currentThread().getName() +" completes the withdrawal");
}else{
System.out.println("Sorry not enought for "+ Thread.currentThread().getName());
}
}
}
Morty Proxy This is a proxified and sanitized view of the page, visit original site.