Distributed C++
暂无分享,去创建一个
Distributed C++ (DC++) is a language in which to write parallel applications on loosely coupled distributed systems. Its key idea is to extend the C++ class into three categories: vanilla C++ classes, classes that act as communication and synchronization gateways between abstract processors, and classes whose instances may be passed by value between abstract processors via gateways. Value classes are deep copied and preserve structure sharing. DC++ marshals arguments when value classes are used in remote method invocations. An important result of making the three categories syntactically identical is that member function invocation of gateways looks identical to vanilla member function invocation. Therefore, gateways may be redistributed without program modification. Concurrency is achieved by creating multiple abstract processors and starting multiple threads of control operating within these abstract processors. DC++ transparently supports multitasking so that the number of actual processors may be changed without program modification. DC++ provides support for concurrency (threads), communication and synchronization (explicit ports, remote method invocation, and futures), and locality (domains). DC++ is designed to run on the Mayfly Distributed Processing System. It also runs on homogeneous workstations (HP Series 9000, Model 300/400/800/700) using BSD sockets or Mach ports for communication.