• [^] # Re: Interruptions vs polling

    Posté par . En réponse à la dépêche Utiliser le JogDial sous Linux. Évalué à 1.

    Voir jogapp.c+489:
    /* check jog periodically */
    gtk_timeout_add( 50, (GtkFunction)check_jog, dummy );

    Autrement dit, toutes les 50 ms (je suppose),
    jogapp regarde si le jogdial a tourné. Il ne
    peut pas faire autrement parce que le read()
    sur le spicdriver renvoie immédiatement 0L
    lorsqu'il ne se passe rien. Evidemment tout
    ça n'encourage pas le CPU à ralentir pour
    économiser la batterie.

    Pour limiter les dégats en attendant mieux,
    jogdiald allonge progressivement sa période
    de polling jusqu'à 1 seconde en période d'inactivité.