|
ORIGINAL
|
POSIX thread implementation. More...
#include <thread.h>


Public Member Functions | |
| pThread () | |
| Construct empty (invalid) thread. | |
| template<typename Callback , typename... ARGS> | |
| pThread (Callback c, ARGS &&... args) | |
| Construct and start POSIX thread. | |
| pThread (pThread &&other) noexcept | |
| Move constructor. | |
| pThread & | operator= (pThread &&other) noexcept |
| Move assignment. | |
| ul_integer | id () const override |
| Get thread identifier. | |
| bool | joinable () const override |
| Check if thread is joinable. | |
| integer | compareTo (const pThread &other) const override |
| u_integer | toHash () const noexcept override |
| Computes the hash of the object. | |
| std::string | className () const override |
| Gets the class name for type identification. | |
| void | join () override |
| Wait for thread to complete. | |
| void | detach () override |
| Detach thread (allow it to run independently) | |
| ~pThread () override | |
| Destructor. | |
Public Member Functions inherited from original::threadBase< pThread > | |
| threadBase () noexcept=default | |
| Default constructor. | |
| threadBase (const threadBase &)=delete | |
| Deleted copy constructor. | |
| threadBase (threadBase &&other) noexcept=default | |
| Default move constructor. | |
| ~threadBase () noexcept override=default | |
| Destructor. | |
| threadBase & | operator= (const threadBase &)=delete |
| Deleted copy assignment. | |
| threadBase & | operator= (threadBase &&other) noexcept=default |
| Default move assignment. | |
| operator bool () const | |
| Check if thread is valid. | |
| bool | operator! () const |
| Check if thread is not valid. | |
| std::string | className () const override |
| Gets the class name for type identification. | |
| std::string | toString (bool enter) const override |
| Generates formatted string representation. | |
Public Member Functions inherited from original::comparable< DERIVED > | |
| virtual integer | compareTo (const DERIVED &other) const =0 |
| Compares the current object with another of the same type. | |
| bool | operator== (const DERIVED &other) const |
| Checks if the current object is equal to another. | |
| bool | operator!= (const DERIVED &other) const |
| Checks if the current object is not equal to another. | |
| bool | operator< (const DERIVED &other) const |
| Checks if the current object is less than another. | |
| bool | operator> (const DERIVED &other) const |
| Checks if the current object is greater than another. | |
| bool | operator<= (const DERIVED &other) const |
| Checks if the current object is less than or equal to another. | |
| bool | operator>= (const DERIVED &other) const |
| Checks if the current object is greater than or equal to another. | |
| virtual | ~comparable ()=default |
| Virtual destructor for proper cleanup of derived objects. | |
Public Member Functions inherited from original::hashable< DERIVED > | |
| virtual bool | equals (const DERIVED &other) const noexcept |
| Compares two objects for equality. | |
| virtual | ~hashable ()=0 |
| Virtual destructor. | |
Public Member Functions inherited from original::printable | |
| operator std::string () const | |
| Explicit conversion to std::string. | |
| operator const char * () const | |
| Explicit conversion to C-style string. | |
| const char * | toCString (bool enter) const |
| Direct C-string access with formatting control. | |
| template<typename TYPE > | |
| auto | formatString (const TYPE &t) -> std::string |
| template<typename TYPE > | |
| auto | formatCString (const TYPE &t) -> const char * |
| template<typename TYPE > | |
| auto | formatEnum (const TYPE &t) -> std::string |
| template<typename TYPE > | |
| auto | formatString (TYPE *const &ptr) -> std::string |
Additional Inherited Members | |
Static Public Member Functions inherited from original::printable | |
| template<typename TYPE > | |
| static std::string | formatString (const TYPE &t) |
| Universal value-to-string conversion with type-specific formatting. | |
| template<Printable TYPE> | |
| static std::string | formatString (const TYPE &t) |
| Specialization for types deriving from printable. | |
| template<EnumType TYPE> | |
| static std::string | formatString (const TYPE &t) |
| Specialization for enum types with type-safe formatting. | |
| template<typename TYPE > | |
| static std::string | formatString (TYPE *const &ptr) |
| Pointer-specific formatting with null safety. | |
| template<typename TYPE > | |
| static const char * | formatCString (const TYPE &t) |
| C-string cache for temporary usage with static storage. | |
| template<typename TYPE > | |
| static std::string | formatEnum (const TYPE &t) |
| Enum formatting utility with underlying value extraction. | |
| template<> | |
| auto | formatString (const char &t) -> std::string |
| template<> | |
| auto | formatString (const bool &t) -> std::string |
| template<> | |
| auto | formatString (const char *const &ptr) -> std::string |
POSIX thread implementation.
Wrapper around pthread with RAII semantics. Provides low-level thread management using POSIX threads API.
|
inlineexplicit |
Construct empty (invalid) thread.
Construct and start POSIX thread.
| Callback | Callback function type |
| ARGS | Argument types for callback |
| c | Callback function to execute in new thread |
| args | Arguments to forward to callback |
| sysError | if thread creation fails |
|
inlinenoexcept |
Move constructor.
| other | Thread to move from |
|
inlineoverride |
Destructor.
|
inlineoverridevirtual |
Gets the class name for type identification.
Override in derived classes to provide accurate type names.
Reimplemented from original::printable.
|
inlineoverridevirtual |
Detach thread (allow it to run independently)
Implements original::threadBase< pThread >.
|
inlineoverridevirtual |
Get thread identifier.
Implements original::threadBase< pThread >.
|
inlineoverridevirtual |
Wait for thread to complete.
Implements original::threadBase< pThread >.
|
inlineoverridevirtual |
Check if thread is joinable.
Implements original::threadBase< pThread >.
|
inlinenoexcept |
Move assignment.
| other | Thread to move from |
|
inlineoverridevirtualnoexcept |
Computes the hash of the object.
Default implementation uses byte-wise hashing of object representation. Override for custom hashing logic.
Reimplemented from original::hashable< DERIVED >.