
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
Question
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 threadB
will call second, and thread( will call third. Design a
before second and second is called before third.
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 3 steps

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
- Please 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_forwardModify 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_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
- 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?arrow_forwardExercise 1: Write a thread class TabPrinter that prints the elements of an array of integers (in one line) every 2 seconds 5 times. Use the way of extending the class thread. Write the main method which creates and starts three threads Printer which will print different arrays of integers. After that it prints "Main won’t wait. Main exits". Modify the above thread program so that you implement the interface Runnable. Make the main thread waiting till all other threads finish execution. ____________________________________________________________________________________________ Exercise 2: Write 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…arrow_forwardSteps to be followed: Create a class called MyThread that extends the Thread class. Declare an instance variable int limitToStop in the MyThread class. Create a parameterized constructor in the MyThread class that takes an int as a parameter to initialize a limitToStop instance variable. Override the run() method in the MyThread class. In the run() method, put a for-loop that goes from 0 to limitToStop. The block associated with the for-loop should print out only the odd numbers. Call Thread.sleep(1000) after every number you print out in the for-loop you created in the previous step. The Thread.sleep(1000) method throws an InterruptedException , which is a checked exception. Therefore, we need to enclose the Thread.sleep(1000) call in a try block. Also, add a catch block associated with the try that catches the InterruptedException and prints out the exception information using the printStackTrace() method. Create a MyThread variable using the new keyword in the main()…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