Event Loop Coordination Using Meta-programming

Printer-friendly version

Publication Type:

Conference Proceedings

Source:

COORDINATION, Springer Berlin Heidelberg (2013)

Keywords:

Ambient-oriented programming, Coordination model, Event loops, Mobile platforms

Abstract:

Event-based programming is used in different domains, ranging from user interface development to various distributed systems. Combining different event-based subsystems into one system forces the developer to manually coordinate the different event loops of these subsystems. This leads to a lot of excessive code and, in addition, some event loops are prey to lifecycle state changes. On mobile applications, for example, event loops can be shut down when memory runs low on the device. Current approaches take care of the communication problems between the different types of event loops, but become complex when trying to deal with lifecycle state changes. We propose a new coordination model, Elector, that allows two event loops to run separately, and introduce a novel kind of reference, called undead references. These references do not only allow communication between the event loops, but also handle lifecycle state changes in such a way that they do not influence other event loops.