Skip to content

feature: channels with priorities #68

@nopeslide

Description

@nopeslide

Related Issues & PRs

Description

  • Broadcasting does not differentiate between consumers with different priorities.
  • This could lead to uncritical consumers blocking critical consumers.
  • Broadcast timeout returns no metric if timeout is acceptable

Solution

  • introduce priority for each channel
    • define priorities groups
      • i.e. 0000 - 1000 is uncritical debug output
      • i.e. 1000 - 2000 is kind of critical user interface output
      • i.e. 2000 - 9999 is critical data flow
  • channel insertion sorts channels in same list by priorities
    • no overhead while broadcasting
  • broadcast runs from highest to lowest priority
  • broadcast updates its handle with last served priority
    • enables check if all system critical consumers were called by comparing the last priority to the priority groups

Alternative solutions

  • none

Context

none

Metadata

Metadata

Assignees

Labels

RTOSFreeRTOS related issueenhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions