|
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 248 of file Process.cc.
|
noexcept |
Definition at line 334 of file Process.cc.
| Process::ThreadLease::~ThreadLease | ( | ) |
Definition at line 342 of file Process.cc.
Definition at line 331 of file Process.cc.
|
inlineexplicit |
|
inline |
|
noexcept |
Definition at line 346 of file Process.cc.
| void Process::ThreadLease::reset | ( | ) |
Definition at line 367 of file Process.cc.
|
private |