How to Cancel a Task

  • Alexey Kolesnichenko
  • Sebastian Nanz
  • Bertrand Meyer
Conference paper

DOI: 10.1007/978-3-642-39955-8_6

Part of the Lecture Notes in Computer Science book series (LNCS, volume 8063)
Cite this paper as:
Kolesnichenko A., Nanz S., Meyer B. (2013) How to Cancel a Task. In: Lourenço J.M., Farchi E. (eds) Multicore Software Engineering, Performance, and Tools. MUSEPAT 2013. Lecture Notes in Computer Science, vol 8063. Springer, Berlin, Heidelberg

Abstract

Task parallelism is ubiquitous in modern applications for event-based, distributed, or reactive systems. In this type of programming, the ability to cancel a running task arises as a critical feature. Although there are a variety of cancellation techniques, a comprehensive account of their characteristics is missing. This paper provides a classification of task cancellation patterns, as well as a detailed analysis of their advantages and disadvantages. One promising approach is cooperative cancellation, where threads must be continuously prepared for external cancellation requests. Based on this pattern, we propose an extension of SCOOP, an object-oriented concurrency model.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Alexey Kolesnichenko
    • 1
  • Sebastian Nanz
    • 1
  • Bertrand Meyer
    • 1
  1. 1.ETH ZurichSwitzerland

Personalised recommendations