Skip to content

Make the main loop configurable #2

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