Skip to content

Architecture: MessageLoop

localghost edited this page Oct 9, 2015 · 8 revisions

Running to different UI loops

Task processing mechanism should be able to run, not only on the message_loop from base:: but also on other kinds of message loops as well, e.g. GLib (for Linux), Mac OS UI loop, etc.

Choices

Adding task to a not running message loop

What should happen if a task is added to a not running message loop?

  • Assertion should be raised
  • Exception should be thrown
  • The task should be ignored silently
  • The task should be added and executed according to the schedule (current approach)

Task stealing

It should allow task stealing.