An efficient and flexible C++ library for concurrent programming

被引:0
|
作者
Poggi, A [1 ]
Rimassa, G [1 ]
机构
[1] Univ Parma, Dipartimento Ingn Informaz, I-43100 Parma, Italy
来源
SOFTWARE-PRACTICE & EXPERIENCE | 1998年 / 28卷 / 13期
关键词
concurrent object-oriented programming languages; interference between inheritance and concurrency; C++; software reuse;
D O I
10.1002/(SICI)1097-024X(1998110)28:13<1437::AID-SPE210>3.0.CO;2-O
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
A major problem for the integration of concurrency in object-oriented languages is the so-called inheritance anomaly, i.e. the conflicts between inheritance and concurrency that often cause the need to redefine inherited methods in order to maintain the integrity of objects. Several solutions have been proposed for resolving these conflicts. However, some of them are incomplete, and do not solve all types of inheritance anomaly; others make the definition of classes complex and/or their implementation inefficient. This paper describes a C++ library for concurrent programming that provides a comprehensive framework particularly suitable for coarse-grained distributed applications. This library copes with the inheritance anomaly problem, presenting a solution that minimizes the redefinition of inherited methods without increasing the complexity to write them. This solution is based on the use of a special set of methods, called interface methods, composed of a body and two sets of synchronization constraints. These two sets of synchronization constraints are respectively used to enable the execution of their method body and to disable the methods that cannot be executed after their method. (C) 1998 John Wiley & Sons, Ltd.
引用
收藏
页码:1437 / 1463
页数:27
相关论文
共 50 条
  • [1] ACT++ - A CLASS LIBRARY FOR CONCURRENT PROGRAMMING IN C++ USING ACTORS
    KAFURA, D
    MUKHERJI, M
    LAVENDER, G
    JOURNAL OF OBJECT-ORIENTED PROGRAMMING, 1993, 6 (06): : 47 - &
  • [2] CONCURRENT C++ - CONCURRENT PROGRAMMING WITH CLASS(ES)
    GEHANI, NH
    ROOME, WD
    SOFTWARE-PRACTICE & EXPERIENCE, 1988, 18 (12): : 1157 - 1177
  • [3] Concurrent C++: Concurrent programming with class(es)
    Gehani, N.H.
    Roome, W.D.
    1600, (18):
  • [4] Functional Programming Library for C++
    M. M. Krasnov
    Programming and Computer Software, 2020, 46 : 330 - 340
  • [5] Support for Parallel and Concurrent Programming in C++
    N. I. V’yukova
    V. A. Galatenko
    S. V. Samborskii
    Programming and Computer Software, 2018, 44 : 35 - 42
  • [6] Object-oriented concurrent programming language concurrent C++
    Li, Tao
    Liu, Xiaojie
    Yu, Juebang
    Dianzi Keji Daxue Xuebao/Journal of University of Electronic Science and Technology of China, 1995, 24 (02):
  • [7] MultiArray: a C++ library for generic programming with arrays
    Garcia, R
    Lumsdaine, A
    SOFTWARE-PRACTICE & EXPERIENCE, 2005, 35 (02): : 159 - 188
  • [8] On the design of a flexible image processing library in C++
    Sacha, JP
    Shabestari, BN
    Kohler, TA
    MACHINE VISION APPLICATIONS, ARCHITECTURES, AND SYSTEMS INTEGRATION VI, 1997, 3205 : 82 - 89
  • [9] Applying genetic improvement to a genetic programming library in C++
    Víctor R. López-López
    Leonardo Trujillo
    Pierrick Legrand
    Soft Computing, 2019, 23 : 11593 - 11609
  • [10] Functional programming in C++ using the FC++ library
    McNamara, B
    Smaragdakis, Y
    ACM SIGPLAN NOTICES, 2001, 36 (04) : 25 - 30