User guide: software timers and work queues

Offen
#114 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Anfängerfreundlichkeit
76/100
Issue-Typ
Dokumentation
Klarheit
Klar beschrieben
Aktivitätsstatus
Aktiv
Tech-Stack
c
Bereich
documentation

Rechercherichtung

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.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

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.
Vorherrschende Sprache
C
Sterne
1
Forks
1
Ø Merge
14 Std. 21 Min.
Gemergte PRs (30 T.)
125

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus EmbLinkOs/EmbLinkRTOS

Alle Issues in EmbLinkOs/EmbLinkRTOS

Ähnliche Issues

Weitere Issues zu C

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.