예제 #1
0
void
sol_mainloop_impl_iter(void)
{
    msg_t msg;
    uint32_t sleeptime;

    sol_mainloop_common_timeout_process();
    sol_mainloop_common_idler_process();
    sol_mainloop_common_timeout_process();

    if (!sol_mainloop_common_loop_check())
        return;

    sleeptime = sleeptime_until_next_timeout();
    if (xtimer_msg_receive_timeout(&msg, sleeptime) > 0)
        sol_interrupt_scheduler_process(&msg);
}
예제 #2
0
void
sol_mainloop_impl_iter(void)
{
    int32_t sleeptime;

    sol_mainloop_common_timeout_process();

    sleeptime = ticks_until_next_timeout();
    sol_mainloop_events_process(sleeptime);

    sol_mainloop_common_idler_process();
}