User guide: software timers and work queues

Abierto
#114 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
3/5
Tiempo estimado
1-2 días
Aptitud para principiantes
76/100
Tipo de issue
Documentación
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
c

Línea de trabajo

Start with docs/specs/SPEC-003-time-timeouts-and-timers.md and docs/specs/SPEC-006-notifications-and-work-queues.md, then check the APIs in include/emb/timer.h and include/emb/work.h and examples in examples/controller. Write docs/user/timers-and-work.md, add it to docs/user/index.md's toctree, and confirm the strict docs build passes and every example compiles; report those checks in the PR.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

documentation good first issue

Goal

Write the user-guide page on software timers and work queues: docs/user/timers-and-work.md. Both exist and are tested, but the user guide does not explain them yet.

What exists

  • The API: include/emb/timer.h, include/emb/work.h.
  • The design: SPEC-003 (time, timeouts, timers) and SPEC-006 (work queues).
  • The tests: tests/conformance/test_timer.c, test_workq.c.
  • The reference controller uses both: examples/controller.

What the page should cover

  • One-shot and periodic timers; why a periodic timer does not drift; what happens when a callback overruns.
  • Where a timer callback runs (a work queue or interrupt context), and what each allows.
  • Work queues: submitting from an interrupt, cancel and synchronous cancel, flush, delayed work.
  • When to use a timer, a work item or a thread with emb_thread_sleep_until().
  • A short, complete example for each.

Done when

  • The page exists and is in docs/user/index.md's toctree, and the strict docs build passes.
  • Every code example compiles; say in the PR how you checked.
Lenguaje dominante
C
Estrellas
1
Forks
1
Merge medio
14 h 21 min
PR fusionados (30 d)
125

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de EmbLinkOs/EmbLinkRTOS

Todos los issues de EmbLinkOs/EmbLinkRTOS

Issues similares

Más issues de C

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.