예제 #1
0
unsigned equeue_tick() {
    if (!equeue_tick_inited) {
        equeue_tick_init();
    }

    unsigned equeue_ms = reinterpret_cast<Timer*>(equeue_timer)->read_ms();
    return (equeue_minutes << 16) + equeue_ms;
}
예제 #2
0
unsigned equeue_tick() {
    if (!equeue_tick_inited) {
        equeue_tick_init();
    }

    unsigned minutes;
    unsigned ms;

    do {
        minutes = equeue_minutes;
        ms = reinterpret_cast<Timer*>(equeue_timer)->read_ms();
    } while (minutes != equeue_minutes);

    return minutes + ms;
}