Skip to content

Make the main loop configurable #2

@samcragg

Description

@samcragg

The main processing of an application should be customized to allow for different trade-offs. The options should be specified in the project file as properties that will eventually transform to customize the code of the generated main method that is compiled with the native compiler.

Allow the following strategies for scheduling to be specified:

  • SingleThreaded - Checks the input and work queue on the main thread.
  • MultiThreaded - Checks the input and work queue on multiple threads in parallel.
  • WorkPool - (default) Checks the input on the main thread and the work queue on multiple threads.
  • PriorityThreads - Checks the input and work queue on multiple threads in a specific order.

Allow the following idle strategies to be specified:

  • BusyWait - Ensures at least one thread is always kept alive.
  • Sleeping - (default) Returns the thread to the operating system for scheduling later.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions