void _vcos_task_timer_cancel(void) { VCOS_THREAD_T *self = vcos_thread_current(); if (self->_timer.timer.linux_timer.function) { vcos_timer_cancel(&self->_timer.timer); vcos_timer_delete(&self->_timer.timer); } }
void _vcos_task_timer_cancel(void) { VCOS_THREAD_T *self = vcos_thread_current(); if (self->_timer.pfn) { vcos_timer_cancel(&self->_timer.timer); self->_timer.pfn = NULL; } }
void _vcos_task_timer_cancel(void) { VCOS_THREAD_T *thread = vcos_thread_current(); if (thread == NULL || !thread->task_timer_created) return; vcos_timer_cancel(&thread->task_timer); thread->orig_task_timer_expiration_routine = NULL; }
/* Stop SVP. Stops worker thread + disables MMAL connection. */ void svp_stop(SVP_T *svp) { vcos_timer_cancel(&svp->wd_timer); vcos_timer_cancel(&svp->timer); /* Stop worker thread */ if (svp->created & SVP_CREATED_THREAD) { svp_set_stop(svp, SVP_STOP_USER); vcos_semaphore_post(&svp->sema); vcos_thread_join(&svp->thread, NULL); svp->created &= ~SVP_CREATED_THREAD; } if (svp->connection) { mmal_connection_disable(svp->connection); } mmal_port_disable(svp->video_output); }