
Database System Concepts
7th Edition
ISBN: 9780078022159
Author: Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher: McGraw-Hill Education
expand_more
expand_more
format_list_bulleted
Concept explainers
Question
![Consider the below Java code.
import
public class Semaphore Demo
java.util.concurrent.Semaphore;
Semaphore binarySema= new Semaphore (1);
public static void main (String args[]) {
final SemaphoreDemo sema DemoObj= new Semaphore Demo ();
Thread td1= new Thread() (
public void run () {
}
}}
}
};
Thread td2= new Thread () {
@Override
public void run () {
sema DemoObj.testMutualExclusion ();
}
sema DemoObj.testMutualExclusion ();
tdl.start();
td2.start ();
private void testMutualExclusion () {
try {
binarySema.acquire();
System.out.println (Thread.currentThread().getName()+
"inside the region of mutual exclusive.");
Thread.sleep (1000);
} catch (InterruptedException e) {
ie.printStackTrace();
} finally (
System.out.println (Thread.currentThread().getName() +
"outside the region of mutual exclusive.");
What would be the output of the program?](https://content.bartleby.com/qna-images/question/306fbe62-d873-4d3c-bd0d-f543b714cd0c/eabbbb99-6281-4e1a-802a-d149998d5152/cez7926_thumbnail.png)
Transcribed Image Text:Consider the below Java code.
import
public class Semaphore Demo
java.util.concurrent.Semaphore;
Semaphore binarySema= new Semaphore (1);
public static void main (String args[]) {
final SemaphoreDemo sema DemoObj= new Semaphore Demo ();
Thread td1= new Thread() (
public void run () {
}
}}
}
};
Thread td2= new Thread () {
@Override
public void run () {
sema DemoObj.testMutualExclusion ();
}
sema DemoObj.testMutualExclusion ();
tdl.start();
td2.start ();
private void testMutualExclusion () {
try {
binarySema.acquire();
System.out.println (Thread.currentThread().getName()+
"inside the region of mutual exclusive.");
Thread.sleep (1000);
} catch (InterruptedException e) {
ie.printStackTrace();
} finally (
System.out.println (Thread.currentThread().getName() +
"outside the region of mutual exclusive.");
What would be the output of the program?
Expert Solution

This question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
Step by stepSolved in 4 steps with 3 images

Knowledge Booster
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.Similar questions
- In java pls! here is some starter code for this problem: public class ThreadingDivisors { public static void main(String[] args) { long start = System.currentTimeMillis(); int maxDivisors = 0; int answer = 0; for (int n=1; n<100000; n++) { int divisors = getNumDivisors(n); if (divisors > maxDivisors) { maxDivisors = divisors; answer = n; } } System.out.println(answer + " has the most divisors (" + maxDivisors + ")"); long end = System.currentTimeMillis(); System.out.println(end - start + " milliseconds"); } public static int getNumDivisors(int n) { int numDivisors = 0; for (int i=1; i<=n; i++) { if (n % i == 0) { numDivisors++; } } return numDivisors; } }arrow_forward// This program is synchronized class Callme { Exercise2: Find and correct the errors from the following program and then compile it. After compilation run the program and write the output in the box bellow. synchronized void (String msg) { System.out.print("[" + msg); Code: try { Thread.sleep(); } } catch (InterruptedException e) { System.out.println("Interrupted"); } System.out.print("]"); } class Caller implements Runnable { String msg; Callme target; Thread t; public Caller (Callme targ, String s) { target= targ; msg=s; } t = new Thread(this); t.start()); public void run () { target.call(msg); } } class Synch { public static void main (String args[]) { Callme target= new Callme(); Caller obl= new Caller (target, "Hello"); Caller ob2 Caller ob3 try { obl..join(); ob2..join(); ob3..join(); }catch (InterruptedException e) { System.out.println("Interrupted"); } } new Caller (target, "Synchronized"); new Caller (target, "World"); }arrow_forwardPlease answer the follwoing regarding the java code: When looking at the code below, assume that the MyThread and MyRunnable classes are correctly implemented in other files. How many threads are there in the program shown below? (Be careful to consider ALL the threads!)arrow_forward
- Modify this threading example to use, exclusively, multiprocessing, instead of threading. import threadingimport time class BankAccount(): def __init__(self, name, balance): self.name = name self.balance = balance def __str__(self): return self.name # These accounts are our shared resourcesaccount1 = BankAccount("account1", 100)account2 = BankAccount("account2", 0) class BankTransferThread(threading.Thread): def __init__(self, sender, receiver, amount): threading.Thread.__init__(self) self.sender = sender self.receiver = receiver self.amount = amount def run(self): sender_initial_balance = self.sender.balance sender_initial_balance -= self.amount # Inserting delay to allow switch between threads time.sleep(0.001) self.sender.balance = sender_initial_balance receiver_initial_balance = self.receiver.balance receiver_initial_balance += self.amount # Inserting delay to allow switch between threads time.sleep(0.001)…arrow_forwardWrite a thread class TextThread that prints a text every 1 second 10 times. Read the following main class. Try to guess what will be its output. class Test { public static void main(String s[]) throws Exception { TextThread x = new TextThread ("I am thread x"); TextThread y= new TextThread ("I am thread y"); System.out.println("I am Main thread"); } } Write it and execute it. Is the output convenient with your previous answer? What’s wrong? Complete the code so that all thread execute properly. Read the following second main class. Guess its output. class Test { public static void main(String s[]) throws Exception { TextThread x = new TextThread ("Hello"); TextThread y = new TextThread ("Java"); x.start(); x.join(); y.start(); System.out.println("I am Main thread"); } } Write it and execute it to check your previous answer. Exercise 3: Read the following code and try to guess what will be its output. import java.util.*; class Car { private int speed; public void…arrow_forward: Suppose we have the following code:public class Foo {public Foo() { ... }public void first() { ... }public void second() { ... }public void third() { ... }}The same instance of Foo will be passed to three different threads. ThreadA will call first,threads will call second, and thread( will call third. Design a mechanism to ensure thatfirst is called before second and second is called before third.arrow_forward
arrow_back_ios
arrow_forward_ios
Recommended textbooks for you
- Database System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- C How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education

Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education

Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON

Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON

C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON

Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning

Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education