breadthread
The APIs of most system-specific GUI frameworks operate on the following principles:
- Primitives are represented by pointers to system objects that are not thread safe.
- The framework requires running an event loop on this thread.
breadthread
aims to create a way to not only abstract over this kind of framework, but also allow it to be
thread safe.
breadthread
provides the BreadThread
object, which is the thread where the bread is acquired. An object
implementing the Controller
trait is used to build the BreadThread
object, which dictates how it operates.
BreadThread
proper is not !Send
; however, it can be used to create ThreadHandle
objects that are.
The Controller
object defines a Directive
type that is used to tell the BreadThread
what to do, as well as
how running the event handler should work. The BreadThread
also creates a "directive thread" dedicated to
receiving directives from other threads.
License
MIT/Apache2 License