Skip to Main Content

Thread Synchronization using Priorities

User_AYF65Sep 5 2017 — edited Sep 7 2017

Hi,

I have a java program which creates 3 threads. I am trying to print thread names by associating a count (i.e from 1-100) in order to differentiate them. Threads are assigned priorities but when i run the program, i find that there is no impact of priorities and instead threads are executing in a random fashion and i am getting a jumbled output. I want the thread1 to run to completion first, then thread2 and so on according to the concept of priority based scheduling. But this is not happening. I dont know why? Some body guide me?

public class ThreadsSyncPriority extends Thread{

private String name;

ThreadsSyncPriority(String s) {

   name=s;

}

public void run() {

   for(int i=0;i<100;++i)

System.out.print(name+" " + i + "\n");

    

}

public static void main(String args[]){

 

 

 

   ThreadsSyncPriority obj1 = new ThreadsSyncPriority("first");

obj1.setPriority(Thread.MAX_PRIORITY);

   obj1.start();

   ThreadsSyncPriority obj2 = new ThreadsSyncPriority("Second");

obj2.setPriority(Thread.NORM_PRIORITY);

   obj2.start();

   ThreadsSyncPriority obj3 = new ThreadsSyncPriority("Third");

obj3.setPriority(Thread.MIN_PRIORITY);

   obj3.start();

}

}

first 0

Second 1

Third 1

Second 2

first 1

Second 3

Third 2

Second 4

first 2

Second 5

Third 3

Second 6

first 3

Second 7

Third 4

Second 8

first 4

Second 9

Third 5

Second 10

first 5

Second 11

Third 6

Second 12

first 6

Second 13

Third 7

Second 14

first 7

Second 15

Third 8

Second 16

first 8

Second 17

Third 9

Second 18

first 9

Second 19

Third 10

Second 20

first 10

Second 21

Third 11

Second 22

first 11

Second 23

Third 12

Second 24

first 12

Second 25

Third 13

Second 26

first 13

Second 27

Third 14

Second 28

first 14

Second 29

Third 15

Second 30

first 15

Second 31

Third 16

Second 32

first 16

Second 33

Third 17

Second 34

first 17

Second 35

Third 18

Second 36

first 18

Second 37

Third 19

Second 38

first 19

Second 39

Third 20

Second 40

first 20

Second 41

Third 21

Second 42

first 21

Second 43

Third 22

Second 44

first 22

Second 45

Third 23

Second 46

first 23

Second 47

Third 24

Second 48

first 24

Second 49

Third 25

Second 50

first 25

Second 51

Third 26

Second 52

first 26

Second 53

Third 27

Second 54

first 27

Second 55

Third 28

Second 56

first 28

Second 57

Third 29

Second 58

first 29

Second 59

Third 30

Second 60

first 30

Second 61

Third 31

Second 62

first 31

Second 63

Third 32

Second 64

first 32

Second 65

Third 33

Second 66

first 33

Second 67

Third 34

Second 68

first 34

Second 69

Third 35

Second 70

Second 71

first 35

Second 72

Third 36

Second 73

first 36

Second 74

Third 37

Second 75

first 37

Second 76

Third 38

Second 77

first 38

Second 78

Third 39

Second 79

first 39

Second 80

Third 40

Second 81

first 40

Second 82

Third 41

Second 83

first 41

Second 84

Third 42

Second 85

first 42

Second 86

Third 43

Second 87

first 43

Second 88

Third 44

Second 89

first 44

Second 90

Third 45

Second 91

first 45

Second 92

Third 46

Second 93

first 46

Second 94

Third 47

Second 95

first 47

Second 96

Third 48

Second 97

first 48

Second 98

Third 49

Second 99

first 49

Third 50

first 50

Third 51

first 51

Third 52

first 52

Third 53

first 53

Third 54

first 54

Third 55

first 55

Third 56

first 56

Third 57

first 57

Third 58

first 58

Third 59

first 59

Third 60

first 60

Third 61

first 61

Third 62

first 62

Third 63

first 63

Third 64

first 64

Third 65

first 65

Third 66

first 66

Third 67

first 67

Third 68

first 68

Third 69

first 69

Third 70

first 70

Third 71

first 71

Third 72

first 72

Third 73

first 73

Third 74

first 74

Third 75

first 75

Third 76

first 76

Third 77

first 77

Third 78

first 78

Third 79

first 79

Third 80

first 80

Third 81

first 81

Third 82

first 82

Third 83

first 83

Third 84

first 84

Third 85

first 85

Third 86

first 86

Third 87

first 87

Third 88

first 88

Third 89

first 89

Third 90

first 90

Third 91

first 91

Third 92

first 92

Third 93

first 93

Third 94

first 94

Third 95

first 95

Third 96

first 96

Third 97

first 97

Third 98

first 98

Third 99

first 99

Some body please guide me.

Zulfi.

Comments
Post Details
Added on Sep 5 2017
3 comments
316 views