15 #ifndef THREADDUMMYIMPL_H
16 #define THREADDUMMYIMPL_H
18 #include "pandabase.h"
19 #include "selectThreadImpl.h"
21 #ifdef THREAD_DUMMY_IMPL
24 #include "threadPriority.h"
29 #ifndef WIN32_LEAN_AND_MEAN
30 #define WIN32_LEAN_AND_MEAN 1
41 class EXPCL_PANDA_PIPELINE ThreadDummyImpl {
43 INLINE ThreadDummyImpl(
Thread *parent_obj);
44 INLINE ~ThreadDummyImpl();
46 INLINE
void setup_main_thread();
47 INLINE
bool start(ThreadPriority priority,
bool joinable);
49 INLINE
void preempt();
51 string get_unique_id()
const;
53 INLINE
static void prepare_for_exit();
55 static Thread *get_current_thread();
56 INLINE
static void bind_thread(
Thread *thread);
57 INLINE
static bool is_threading_supported();
58 INLINE
static bool is_true_threads();
59 INLINE
static bool is_simple_threads();
60 INLINE
static void sleep(
double seconds);
61 INLINE
static void yield();
62 INLINE
static void consider_yield();
65 #include "threadDummyImpl.I"
67 #endif // THREAD_DUMMY_IMPL
A thread; that is, a lightweight process.