Where academic tradition
meets the exciting future

Event-Driven Asynchronous Method Calls with the D-Bus Message System

Olli Salli, Olli Nevalainen, Ville Leppänen, Event-Driven Asynchronous Method Calls with the D-Bus Message System. Software-Practice and Experience 45(1), 53–74, 2015.


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.

BibTeX entry:

  title = {Event-Driven Asynchronous Method Calls with the D-Bus Message System},
  author = {Salli, Olli and Nevalainen, Olli and Leppänen, Ville},
  journal = {Software-Practice and Experience},
  volume = {45},
  number = {1},
  publisher = {Wiley},
  pages = {53–74},
  year = {2015},
  ISSN = {0038-0644},

Belongs to TUCS Research Unit(s): Software Development Laboratory (SwDev)

Publication Forum rating of this publication: level 2

Edit publication