|
The Pedigree Project 0.1
|
#include <Process.h>
Collaboration diagram for Process::ThreadLease:Public Member Functions | |
| ThreadLease (ThreadLease &&other) noexcept | |
| ThreadLease & | operator= (ThreadLease &&other) noexcept |
| Thread * | get () const |
| Thread * | operator-> () const |
| operator bool () const | |
| void | reset () |
Private Member Functions | |
| ThreadLease (Process *process, Thread *thread) | |
| ThreadLease (const ThreadLease &)=delete | |
| ThreadLease & | operator= (const ThreadLease &)=delete |
Private Attributes | |
| Process * | m_pProcess |
| Thread * | m_pThread |
| TerminationDeferral | m_TerminationDeferral |
Friends | |
| class | Process |
Pins one Thread together with its owning Process.
Detached-thread deletion closes admission and drains these leases after the scheduler has switched off the target stack. Process destruction likewise drains the Process half before deleting retained Threads. Leases are thread-affine and must be released by their acquiring Thread.
| Process::ThreadLease::ThreadLease | ( | ) |
Definition at line 353 of file Process.cc.
|
noexcept |
Definition at line 439 of file Process.cc.
| Process::ThreadLease::~ThreadLease | ( | ) |
Definition at line 447 of file Process.cc.
Definition at line 436 of file Process.cc.
|
inlineexplicit |
|
inline |
|
noexcept |
Definition at line 451 of file Process.cc.
| void Process::ThreadLease::reset | ( | ) |
Definition at line 472 of file Process.cc.
|
private |