Download Parallel Object Programming in C++ User and Installation Manual
Transcript
Table of content Table of content 1 Overview...................................................................................................................1 1.1 Introduction ...........................................................................................................................1 1.2 The POP Model ....................................................................................................................1 1.3 System Overview ..................................................................................................................2 1.4 Structure of this Manual ........................................................................................................2 1.5 Additional Informations ........................................................................................................3 2 The Parallel Object Model .....................................................................................5 2.1 Introduction ...........................................................................................................................5 2.2 The Parallel Object Model ....................................................................................................5 2.3 Shareable Parallel Objects ....................................................................................................6 2.4 Methods Invocation Semantics .............................................................................................6 2.5 Parallel Object Allocation .....................................................................................................8 2.6 Requirement-driven Parallel Objects ....................................................................................8 3 User Programming Manual .................................................................................11 3.1 Introduction .........................................................................................................................11 3.2 Parallel Objects ...................................................................................................................12 3.2.1 Parallel Classes ..............................................................................................................12 3.2.2 Creation and Destruction ...............................................................................................12 3.2.3 Parallel Class Method Invocations ................................................................................13 3.2.4 Passing arguments .........................................................................................................14 3.2.5 Marshalling complex arguments ...................................................................................16 3.2.6 Inheritance in POP-C++ ................................................................................................19 3.2.7 Usage of this in POP-C++ ........................................................................................19 3.2.8 Standard output in POP-C++ ........................................................................................21 3.2.9 Object Descriptions .......................................................................................................21 3.3 Object Layout .....................................................................................................................22 3.3.1 The @pack() directive ..............................................................................................22 3.3.2 Class Unique Identifier ..................................................................................................24 3.4 POP-C++ standard library ..................................................................................................25 3.4.1 The POPString class ......................................................................................................25 3.4.2 Synchronization and locks ............................................................................................25 3.4.3 Exceptions .....................................................................................................................28 3.5 Limitations ..........................................................................................................................29 4 Compiling and Running .......................................................................................31 4.1 The POP-C++ compilation process ....................................................................................31 4.2 Compiling a simple POP-C++ program ..............................................................................31 4.2.1 Compiling ......................................................................................................................32 4.2.2 Compiling the parallel classes .......................................................................................32 4.2.3 Running POP-C++ programs ........................................................................................32 4.3 Compiling a complex POP-C++ program ...........................................................................33