Support for Parallel and Concurrent Programming in C++

C++ was originally designed as a sequential programming language. For development of multithreaded applications, libraries, such as Pthreads, Windows threads, and Boost, are traditionally used. The C++11 standard introduced some basic concepts and means for developing parallel and concurrent program...

Full description

Saved in:
Bibliographic Details
Published in:Programming and computer software Vol. 44; no. 1; pp. 35 - 42
Main Authors: V’yukova, N. I., Galatenko, V. A., Samborskii, S. V.
Format: Journal Article
Language:English
Published: Moscow Pleiades Publishing 01.01.2018
Springer Nature B.V
Subjects:
ISSN:0361-7688, 1608-3261
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:C++ was originally designed as a sequential programming language. For development of multithreaded applications, libraries, such as Pthreads, Windows threads, and Boost, are traditionally used. The C++11 standard introduced some basic concepts and means for developing parallel and concurrent programs, but the direct use of these low-level means requires high programming skills and significant efforts. The absence of high-level models of parallelism in C++ is somewhat compensated for by various parallel libraries and directive parallelization tools (such as OpenMP), as well as by language extensions supported by some compilers (Intel CilkPlus). Nevertheless, we still require more advanced means to express parallelism in programs at the level of language standard and language library. In this survey, we consider the means for parallel and concurrent programming that are included into the C++17 standard, as well as some capabilities that are to be expected in the future standards.
Bibliography:ObjectType-Article-1
SourceType-Scholarly Journals-1
ObjectType-Feature-2
content type line 14
ISSN:0361-7688
1608-3261
DOI:10.1134/S0361768818010073