CS-434: Object-Oriented Programming Using Java Week 8

Preview:

DESCRIPTION

CS-434: Object-Oriented Programming Using Java Week 8. Dr. Jesús Borrego Adjunct Faculty Regis University. Class Outline. Review of Final Project Key Terms Concurrency and Multithreading Questions on Final Final Exam Questions?. Key Terms. Multithread – múltiples hilos Thread - Hilo. - PowerPoint PPT Presentation

Citation preview

scis.regis.edu ● scis@regis.edu

CS-434: Object-Oriented Programming Using Java

Week 8

Dr. Jesús BorregoAdjunct FacultyRegis University

1

Class Outline•Review of Final Project•Key Terms•Concurrency and Multithreading•Questions on Final•Final Exam•Questions?

2

Key Terms

• Multithread – múltiples hilos• Thread - Hilo

3

Concurrency

•Performing more than one task at the same time

•Can be done either by multiple processes managed by the OS or by multiple threads running under a single process

•We’ll examine Java’s approach to threads

4

Concurrency in multiple CPUs

5

Threads

6

Thread States

7

Thread Priorities

•Public static final int MAX_PRIORITY▫Defines the highest priority that can be

assigned to a thread•Public static final int MIN_PRIORITY

▫Defines the lowest priority that can be assigned to a thread

•Public static final int NORM_PRIORITY▫Defines the normal, default priority that is

assigned to a thread

8

Thread Priorities (Cont’d)•On Windows, the priorities typically range

from 1-10, (10 > 1, 5 is normal)•Other platforms use different values•Highest priority threads execute before

lower priority▫i.e., threads of lower priority must wait for

higher priority threads to relinquish the CPU before they (the lower priority threads) can run.

•Threads of the same priority are allocated CPU time slices in a “round robin” fashion.

9

Thread Management

•Java provides three techniques for creating threads: ▫class inheritance▫interface implementation▫timer for scheduled events

•Thread Class

10

Thread Class

•The two most important methods of class Thread are run() and start()

•Method run() is used to define the high-level coding logic of a thread, which is provided by you, the developer, either through inheritance or with an implementation of interface Runnable

•When method start() is called, it notifies the JVM to launch a new thread whose entry point is method run()

11

Thread Inheritance

12

•Create a class that extends Thread

•In main:

Activity 1

•Port scan and threads in Java (16:50 min): http://www.youtube.com/watch?v=FpT2fJlBSjU

13

Questions on material covered

14

Demo of Final Project

15

Final Exam

•Due Tuesday by midnight•Submit to WorldClass as a single zip file

containing the Word document and a folder with the entire NetBeans project

16

Questions?

17

Recommended