626 Chapter 13 Concurrency
- What is a thread of control in a program?
- Why are coroutines called quasi-concurrent?
- What is a multithreaded program?
- What are four reasons for studying language support for concurrency?
- What is a heavyweight task? What is a lightweight task?
- Define task, synchronization, competition and cooperation synchronization,
liveness, race condition, and deadlock. - What kind of tasks do not require any kind of synchronization?
- Describe the five different states in which a task can be.
- What is a task descriptor?
- In the context of language support for concurrency, what is a guard?
- What is the purpose of a task-ready queue?
- What are the two primary design issues for language support for
concurrency? - Describe the actions of the wait and release operations for semaphores.
- What is a binary semaphore? What is a counting semaphore?
- What are the primary problems with using semaphores to provide
synchronization? - What advantage do monitors have over semaphores?
- In what three common languages can monitors be implemented?
- Define rendezvous, accept clause, entry clause, actor task, server task,
extended accept clause, open accept clause, closed accept clause, and com-
pleted task. - Which is more general, concurrency through monitors or concurrency
through message passing? - Are Ada tasks created statically or dynamically?
- What purpose does an extended accept clause serve?
- How is cooperation synchronization provided for Ada tasks?
- What is the purpose of an Ada terminate clause?
- What is the advantage of protected objects in Ada 95 over tasks for
providing access to shared data objects? - Specifically, what Java program unit can run concurrently with the main
method in an application program? - Are Java threads lightweight or heavyweight tasks?
- What does the Java sleep method do?
- What does the Java yield method do?
- What does the Java join method do?
- What does the Java interrupt method do?
- What are the two Java constructs that can be declared to be
synchronized?