72 if (self->m_rt_task == NULL)
74 PRINTF(
"ERROR: Cannot initialize LXRT task %lu!\n", self->m_thread_id);
75 PRINTF(
" Probably another thread with the same name already exists.\n");
79 rt_task_use_fpu(self->m_rt_task, 1);
81 if (self->m_priority < 0)
83 rt_make_hard_real_time();
84 if (!rt_is_hard_real_time(rt_buddy()))
86 PRINTF(
"ERROR: Setting thread %lu to hard real-time failed!\n", self->m_thread_id);
99 self->m_thread->runThread();
101 rt_make_soft_real_time();
105 rt_task_delete(self->m_rt_task);
106 self->m_rt_task = NULL;
TimeSpan abs(const TimeSpan &span)
virtual ~ThreadImplLxrt33()
ThreadImplLxrt33(Thread *thread, icl_core::ThreadPriority priority)
Contains icl_core::logging::ThreadImplLxrt33.
Contains a system independet PRINTF macro.
Contains icl_core::logging::Thread.
Contains global LXRT functions.
static void * runThread(void *arg)
#define DEFAULT_STACK_SIZE