Zen API
 All Classes Files Functions Variables Typedefs Friends Macros Modules Pages
kThread Class Reference

Description

Represents a thread.

Inheritance diagram for kThread:
Inheritance graph

Public Member Functions

kBool kThread_CanSetAffinty ()
 Reports whether core affinity can be set. More...
 
kStatus kThread_Construct (kThread *thread, kAlloc allocator)
 Constructs a kThread object. More...
 
kThreadId kThread_CurrentId ()
 Gets a unique identifier that represents the currently executing thread. More...
 
kThreadId kThread_Id (kThread thread)
 Gets a unique identifier representing the thread. More...
 
kBool kThread_IsSelf (kThread other)
 Reports whether the specified thread is the currently executing thread. More...
 
kStatus kThread_Join (kThread thread, k64u timeout, kStatus *exitCode)
 Blocks until the thread exits, or until a timeout occurs. More...
 
kThreadPriorityClass kThread_MaxPriorityClass ()
 Reports the maximum supported priority class. More...
 
k32s kThread_MaxPriorityOffset (kThreadPriorityClass priorityClass)
 Reports the maximum supported priority offset for the specified priority class. More...
 
kThreadPriorityClass kThread_MinPriorityClass ()
 Reports the minimum supported priority class. More...
 
k32s kThread_MinPriorityOffset (kThreadPriorityClass priorityClass)
 Reports the minimum supported priority offset for the specified priority class. More...
 
const kCharkThread_Name (kThread thread)
 Reports the name associated with the thread. More...
 
kSize kThread_ProcessorCount ()
 Reports the number of logical processors in the current system. More...
 
kStatus kThread_SetAffinity (kThread thread, kBitArray affinity)
 Sets the CPUs with which the thread should have affinity. More...
 
kStatus kThread_SetName (kThread thread, const kChar *name)
 Sets the name of the thread. More...
 
kStatus kThread_SetPriority (kThread thread, kThreadPriorityClass priorityClass, k32s priorityOffset)
 Sets the priority associated with the thread. More...
 
kStatus kThread_Sleep (k64u duration)
 Causes the current thread to yield control for approximately the specified duration. More...
 
kStatus kThread_SleepAtLeast (k64u duration)
 Causes the current thread to yield control for at least the specified duration. More...
 
kStatus kThread_Start (kThread thread, kThreadFx function, kPointer context)
 Begins executing a thread using the specified callback function. More...
 
kStatus kThread_Start (kThread thread, kThreadFx function, kPointer context, const kChar *name)
 Begins executing a thread using the specified callback function and thread name. More...
 
kStatus kThread_Start (kThread thread, kThreadFx function, kPointer context, const kChar *name, kThreadPriorityClass priorityClass, k32s priorityOffset)
 Begins executing a thread using the specified callback function and options. More...
 
kStatus kThreadPool_SetAffinity (kThreadPool pool, kBitArray affinity)
 Sets the CPUs with which the thread pool should have affinity. More...
 
kStatus kThreadPool_SetPriority (kThreadPool pool, kThreadPriorityClass priorityClass, k32s priorityOffset)
 Sets the priority associated with the thread pool. More...
 
- Public Member Functions inherited from kObject
kAlloc kObject_Alloc (kObject object)
 Gets the memory allocator associated with this object. More...
 
kAllocTrait kObject_AllocTraits (kObject object)
 Gets the bitset of allocator traits for any allocators used within this object, including aggregated child elements. More...
 
kStatus kObject_Clone (kObject *object, kObject source, kAlloc objectAllocator)
 Constructs a new object by copying an existing object, including any aggregated child elements. More...
 
kStatus kObject_Clone (kObject *object, kObject source, kAlloc objectAllocator, kAlloc valueAllocator, kObject context=kNULL)
 Constructs a new object by copying an existing object, including any aggregated child elements. More...
 
kStatus kObject_Destroy (kObject object)
 Destroys the object. More...
 
kStatus kObject_Dispose (kObject object)
 Destroys the object and any aggregated child elements. More...
 
kBool kObject_Equals (kObject object, kObject other)
 Determines whether the object is equal to another object. More...
 
kBool kObject_HasForeignData (kObject object)
 Reports whether the object, including aggregated child elements, contains any foreign memory references. More...
 
kSize kObject_HashCode (kObject object)
 Gets a hash code representing the state of this object. More...
 
kBool kObject_HasShared (kObject object)
 Reports whether an object or any of its aggregated child elements has a reference count greater than one. More...
 
kBool kObject_Is (kObject object, kType type)
 Determines whether this object is an instance of the specified type. More...
 
kBool kObject_IsShared (kObject object)
 Reports whether the object is currently shared (reference count greater than one). More...
 
kStatus kObject_SetPool (kObject object, kObjectPool pool)
 Sets the object pool associated with this object. More...
 
kStatus kObject_Share (kObject object)
 Increments the reference count associated with this object. More...
 
kSize kObject_Size (kObject object)
 Estimates the memory consumed by this object, including any aggregated child elements. More...
 
kType kObject_Type (kObject object)
 Returns the type of the object. More...
 

Additional Inherited Members

- Protected Member Functions inherited from kObject
kStatus kObject_FreeMem (kObject object, void *mem)
 Protected method called by derived classes to free memory using the object's allocator. More...
 
kStatus kObject_FreeMemRef (kObject object, void *mem)
 Protected method called by derived classes to free memory (and reset the provided memory pointer to kNULL) using the object's allocator. More...
 
kStatus kObject_GetMem (kObject object, kSize size, void *mem)
 Protected method called by derived classes to allocate memory using the object's allocator. More...
 
kStatus kObject_GetMemZero (kObject object, kSize size, void *mem)
 Protected method called by derived classes to allocate and zero memory using the object's allocator. More...
 
kStatus kObject_Init (kObject object, kType type, kAlloc alloc)
 Protected method called by derived classes to initialize the kObject base class. More...
 
kAllocTrait kObject_VAllocTraits (kObject object)
 Protected virtual method that gets the bitset of allocator traits for any allocators used within this object, including aggregated child elements. More...
 
kStatus kObject_VClone (kObject object, kObject source, kAlloc valueAllocator, kObject context)
 Protected virtual method that clones (makes a deep copy of) the specified source object. More...
 
kStatus kObject_VDisposeItems (kObject object)
 Protected virtual method that destroys any aggregated child objects associated with a collection. More...
 
kBool kObject_VEquals (kObject object, kObject other)
 Protected virtual method that compares two objects for equality. More...
 
kSize kObject_VHashCode (kObject object)
 Protected virtual method that calculates a hash code representing the object instance. More...
 
kBool kObject_VHasShared (kObject object)
 Protected virtual method that reports whether an object or any of its aggregated child elements has a reference count greater than one. More...
 
kStatus kObject_VRelease (kObject object)
 Protected virtual method that deallocates any resources owned by the object. More...
 
kSize kObject_VSize (kObject object)
 Protected virtual method that calculates the total size (in bytes) of the object instance. More...
 

The documentation for this class was generated from the following files: