STLdoc
STLdocumentation
|
An abstraction of a physical location on hardware. More...
#include <concrt.h>
Public Types | |
enum | _Type { _System, _NumaNode, _SchedulingNode, _ExecutionResource } |
Describes the type of the given location. More... | |
Public Member Functions | |
location () | |
Constructs a location object. More... | |
location (const location &_Src) | |
Constructs a location object. More... | |
location & | operator= (const location &_Rhs) |
Assigns the contents of a different location object to this one. More... | |
~location () | |
Destroys a location object. More... | |
bool | operator== (const location &_Rhs) const |
Determines whether two location objects represent the same location. More... | |
bool | operator!= (const location &_Rhs) const |
Determines whether two location objects represent different location. More... | |
location (_Type _LocationType, unsigned int _Id, unsigned int _BindingId=0, _Inout_opt_ void *_PBinding=NULL) | |
Constructs a specific location. More... | |
bool | _FastVPIntersects (const location &_Rhs) const |
Determines whether two locations have an intersection. This is a fast intersection which avoids certain checks by knowing that the this pointer is a virtual processor location for a validly bound virtual processor. More... | |
bool | _FastNodeIntersects (const location &_Rhs) const |
Determines whether two locations have an intersection. This is a fast intersection which avoids certain checks by knowing that the this pointer is a node for a validly bound node. More... | |
void | _Assign (const location &_Rhs) |
Assigns _Rhs to this location. More... | |
bool | _Is_system () const |
Internal routine that tells whether a location represents the "system location". This indicates no specific placement. More... | |
template<typename T > | |
T * | _As () const |
Returns the internal binding as a specified object. More... | |
unsigned int | _GetId () const |
Returns the ID which this location object represents. More... | |
_Type | _GetType () const |
Returns the type which this location object represents. More... | |
unsigned int | _GetBindingId () const |
Gets the binding ID for this location. More... | |
Static Public Member Functions | |
static _CRTIMP location __cdecl | current () |
Returns a location object representing the most specific place the calling thread is executing. More... | |
static _CRTIMP location __cdecl | _Current_node () |
Returns a location representing the scheduling node that the calling thread is executing. More... | |
Private Attributes | |
unsigned int | _M_type: 28 |
unsigned int | _M_reserved: 4 |
unsigned int | _M_bindingId |
union { | |
unsigned int _M_id | |
void * _M_ptr | |
}; | |
void * | _M_pBinding |
An abstraction of a physical location on hardware.
Describes the type of the given location.
|
inline |
Constructs a location
object.
A default constructed location represents the system as a whole.
|
inline |
Constructs a location
object.
Concurrency::location::location | ( | _Type | _LocationType, |
unsigned int | _Id, | ||
unsigned int | _BindingId = 0 , |
||
_Inout_opt_ void * | _PBinding = NULL |
||
) |
Constructs a specific location.
|
inline |
Returns the internal binding as a specified object.
Assigns _Rhs to this location.
Returns a location representing the scheduling node that the calling thread is executing.
Determines whether two locations have an intersection. This is a fast intersection which avoids certain checks by knowing that the this pointer is a node for a validly bound node.
_Rhs | The location to intersect with this. |
Determines whether two locations have an intersection. This is a fast intersection which avoids certain checks by knowing that the this pointer is a virtual processor location for a validly bound virtual processor.
_Rhs | The location to intersect with this. |
|
inline |
Gets the binding ID for this location.
|
inline |
Returns the ID which this location object represents.
|
inline |
Returns the type which this location object represents.
|
inline |
Internal routine that tells whether a location represents the "system location". This indicates no specific placement.
Returns a location
object representing the most specific place the calling thread is executing.
Determines whether two location
objects represent different location.
true
if the two locations are different, false
otherwise. Assigns the contents of a different location
object to this one.
_Rhs | The source location object. |
Determines whether two location
objects represent the same location.
true
if the two locations are identical, and false
otherwise. union { ... } |
|
private |
unsigned int Concurrency::location::_M_id |
|
private |
void* Concurrency::location::_M_ptr |
|
private |
|
private |