Lecture 20 - Concurrent Programming and Multithreading

Lecture 20 - Concurrent Programming and Multithreading -...

Info iconThis preview shows pages 1–2. Sign up to view the full content.

View Full Document Right Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: Concurrent Programming and Multithreading Introduction Concurrency: where 2 or more units of execution operate in parallel o On a multiprocessor computer, there may be a single thread of execution on each CUP o On a single processor computer, the illusion of concurrency is achieved by scheduling small slices of time for each thread in a round-robin fashion Task (process or heavyweight process) o Is an instance of a running program o Has its own private address space o Is managed by the OS o Interprocess (intertask) communication is expensive Thread (lightweight process) o Is an asynchronous unit of execution within a task o Shares the address space with other threads in the task o Often provided by the OS with library functions o Communication among threads is inexpensive since shared data is usually used Multitasking: where 2 or more tasks run concurrently Multithreading: where 2 or more threads run concurrently within a task Java has built in support for threads and synchronization...
View Full Document

This note was uploaded on 11/04/2010 for the course CPSC 233 taught by Professor Li during the Fall '09 term at University of Calgary.

Page1 / 5

Lecture 20 - Concurrent Programming and Multithreading -...

This preview shows document pages 1 - 2. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online