A Design Pattern for Component Oriented Development of Agent Based Multithreaded Applications

  • Authors:
  • A. L. Rodríguez;P. E. López-De-Teruel;A. Ruiz;G. García-Mateos;L. Fernóndez

  • Affiliations:
  • Dept. Tecnologí e Ingenierí de Computadores, University of Murcia,;Dept. Tecnologí e Ingenierí de Computadores, University of Murcia,;Dept. Informática y Sistemas, University of Murcia,;Dept. Informática y Sistemas, University of Murcia,;Dept. Tecnologí e Ingenierí de Computadores, University of Murcia,

  • Venue:
  • Euro-Par '08 Proceedings of the 14th international Euro-Par conference on Parallel Processing
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present a design pattern which allows for easy multithreaded application development, without requiring parallel programming expertise from potential users. The pattern encourages reusability considering threads as truly independent software components, or agents, while hiding the low level details about safe data sharing and synchronization. Though coarse grained, the solution is perfectly compatible with other more specific multithreading techniques, which could be used in more computationally intensive agents. The approach is based on the classical pipeline pattern, but includes also asynchronous communications and event driven responses, and implements an efficient distributed synchronization and data sharing technique, which minimizes overhead. These features make the pattern specially adequate for real time applications that possibly need to be monitored by an interactive GUI, such as computer vision or signal processing applications, among others.