CSMC 335 Homework 4
Homework 4 1. (10 pts) For the following program, explain the interesting elements related to threads. Focus on explaining the output of the program. 1 public class TaskThreadDemo { 2 public static void main (String args []) { 3 String [] sa = {“a”, “X”, “+”, “.”}; 4 for (String s: sa) { 5 Runnable ps = new PrintChar (s, 200); 6 Thread ts = new Thread (ps, s); 7 ts.start (); 8 } // end for each character 9 } // end main 10 } // end class TaskThreadDemo 11 12 class PrintChar implements Runnable { 13 String ch; 14 int times; 15 16 public PrintChar (String c, int n) { 17 ch = c; 18 times = n; 19 } // end constructor 20 21 public void run () { 22 for (int i = 0; i < times; i++) { 23 System.out.print (ch); 24 } // end for loop 25 } // end method run 26 } // end class PrintChar 2. (10 pts) What is changed if the method called on line 7, start(), is replaced with run()? Explain (of course). Focus on explaining the output of the program. 3. (10 pts) What is changed if the method Thread.yield() is added between lines 23 and 24? Explain. Focus on explaining the output of the program. 4. (10 pts) Modify the above program so that the Thread.sleep method is called after each character has been printed causing it to sleep for 500 milliseconds. Describe how that modification has altered the output and explain why the change had the effect that you described. 5. (10 pts) Modify the above program so that the Thread.sleep method is called after each thread is created in the main method causing it to sleep for 500 milliseconds. Describe how that modification has altered the output and explain why the change had the effect that you described. 1 Grading Rubric: Attribute Problem 1 Problem 2 Problem 3 Problem 4 Problem 5 Meets Does not meet 10 points Explains the interesting elements related to threads. Focuses on explaining the output of the program. 10 points Explains what is changed if the method called on line 7, start(), is replaced with run().Focuses on explaining the output of the program. 10 points Explains what is changed if the method Thread.yield() is added between lines 23 and 24. Focuses on explaining the output of the program. 10 points Explains how the output is changed if the Thread.sleep method is called after each character has been printed. 10 points Explains how the output is changed if the Thread.sleep method is called after each thread is created in the main method. 0 points Does not explain the interesting elements related to threads. Does not focus on explaining the output of the program. 0 points Does not explain what is changed if the method called on line 7, start(), is replaced with run(). Does not focus on explaining the output of the program. 0 points Does not explain what is changed if the method Thread.yield() is added between lines 23 and 24. Does not focus on explaining the output of the program. 0 points Does not explain how the output is changed if the Thread.sleep method is called after each character has been printed. 0 points Does not explain how the output is changed if the Thread.sleep method is called after each thread is created in the main method. 2
Collepals.com Plagiarism Free Papers
Are you looking for custom essay writing service or even dissertation writing services? Just request for our write my paper service, and we'll match you with the best essay writer in your subject! With an exceptional team of professional academic experts in a wide range of subjects, we can guarantee you an unrivaled quality of custom-written papers.
Get ZERO PLAGIARISM, HUMAN WRITTEN ESSAYS
Why Hire Collepals.com writers to do your paper?
Quality- We are experienced and have access to ample research materials.
We write plagiarism Free Content
Confidential- We never share or sell your personal information to third parties.
Support-Chat with us today! We are always waiting to answer all your questions.