The background thread runs inside of the DefaultEventHandler to consume events from the ApplicationEventQueue and produce events to the BackgroundEventQueue.
The background thread runnable consist of a loop that tries to poll events from the ApplicationQueue, processes the event if there are any, and poll networkClient.
In this implementation, the DefaultEventHandler spawns a thread that runs the BackgroundThreadRunnable. The runnable, as of the current PR, does the following things:
- Initialize the networkClient
- Poll ApplicationEvent from the queue if there's any
- process the event
- poll the networkClient