Run-time libraries (not programmers) create and manage threads
Anonymous Quiz
85%
Implicit Threading
15%
Explicit Threading
works well for tasks that are synchronous (cooperating).
Anonymous Quiz
20%
Thread pool
80%
Fork-join
in implicit threading Each task is mapped to a separate thread using the many-to-many model
Anonymous Quiz
90%
T
10%
F
At startup, the server creates a set of threads in a pool
Anonymous Quiz
94%
Thread pool
6%
Fork-Join
Create one or more child threads. then Wait for the created threads (children) to terminate. finally Join the threads, at which point it can retrieve and combine their results
Anonymous Quiz
16%
Thread pool
84%
Fork-Join
When the server receives a request, it submits it to the pool
Anonymous Quiz
91%
Thread pool
9%
Fork-Join
in Thread pool If the pool is empty, the task is queued until a thread becomes free
Anonymous Quiz
86%
T
14%
F
in Thread pool Once a thread completes serving the request, it returns to the pool.
Anonymous Quiz
92%
T
8%
F
…. can adjust the number of threads in the pool.
Anonymous Quiz
15%
sequential thread pool
85%
dynamic thread pool
creating a thread is faster than Serving a request with an existing thread
Anonymous Quiz
36%
T
64%
F
Refers to terminating a thread before it has completed
Anonymous Quiz
11%
Thread constructing
89%
Thread Cancellation
The target thread periodically checks whether it should terminate
Anonymous Quiz
21%
Asynchronous cancellation
79%
Deferred cancellation
One thread immediately terminates the target thread
Anonymous Quiz
91%
Asynchronous cancellation
9%
Deferred cancellation
This allows the target thread to terminate itself in an orderly fashion
Anonymous Quiz
21%
Asynchronous cancellation
79%
Deferred cancellation