A1 Journal article – refereed
Event-driven asynchronous method calls with the D-Bus message system

List of Authors: Olli Salli, Olli Nevalainen, Ville Leppänen
Publisher: Wiley Online Library
Publication year: 2015
Journal: Software: Practice and Experience
Volume number: 45
Issue number: 1
Number of pages: 22
ISSN: 0038-0644
eISSN: 1097-024X


The use of inter-process communication can yield many benefits for event-driven desktop software. However, inter-process communication (IPC) research has traditionally been focused on calculation-oriented distributed computing. This article shows that existing IPC solutions are a poor fit for the constraints imposed by event-driven programming. Our novel solution is built on top of the D-Bus system, which enjoys increased practical usage, but is still scantily researched. We focus on efficient handling of asynchronous D-Bus method calls, in a fashion similar to how Hypertext Transfer Protocol requests are treated in Asynchronous JavaScript and XML Web applications. This is supplemented with two design patterns that simplify processing of results for many kinds of asynchronous operations in event-driven software, besides just D-Bus calls. Our approach is shown to be more appropriate for event-driven applications than traditional remote procedure call systems in aspects as diverse as interactivity, threading complexity and electrical power usage.

Last updated on 2019-19-07 at 20:56