subject

The goal of this assignment is to write a multithreaded program that explores synchronization challenge. For this part, assume that, we have a shared variable NextID. This is initialized to 1 at the beginning.
Now create 5 threads in your program and assign ID 1, 2, 3, 4, 5 to them respectively. You can pass the ID as a parameter when you create the threads.
Each of the threads will try to access the variable "NextID".
Whenever a thread acquires the variable, it checks whether the NextId is equal to its own Id or not.
If it is not equal, it will output "Not My Turn!", then print its threadId, and then release the variable.
If it is equal, the thread will print ""My turn!", then print its threadId, increase the NextId by 1, and then release the variable. However, after increasing NextID by 1, the thread will check if the value is 6 or not. If it is 6, it will reset it to 1 before releasing the variable.
The program should execute until each thread prints "Mu Turn!" 20 times. Once a thread prints for 20 times, it terminates.
Count the number of times each thread prints "Not my Turn!" and include that in the report.

ansver
Answers: 3

Another question on Computers and Technology

question
Computers and Technology, 23.06.2019 06:40
How many nibbles can be stored in a 16-bit word?
Answers: 1
question
Computers and Technology, 23.06.2019 12:30
What is the difference between the internet and the world wide web?
Answers: 1
question
Computers and Technology, 23.06.2019 16:00
Does read theory have answers keys ?
Answers: 1
question
Computers and Technology, 23.06.2019 17:00
In which of the following ways can using test-taking tips you? a. you can focus on the information that you need to study. b. you will see the answers to the test. c. you will study more. d. you will be less organized.
Answers: 1
You know the right answer?
The goal of this assignment is to write a multithreaded program that explores synchronization challe...
Questions
question
English, 20.09.2019 20:50
question
Mathematics, 20.09.2019 20:50