2025-03-15 - San Raimundo de Fitero y otros... |      623029155    info@evainformatica.es  Contacta

C++ Network Programming, Volume 2: Systematic Reuse with ACE and Frameworks

https://evainformatica.es/biblioteca_virtual/manuales/img/cplus_plus_network_programming_volume_2.png

Formato: chm

Tamaño: 2.2 MB

idioma: en

Descargar

This book presents numerous C++ applications to reinforce the design discussions by showing concrete examples of how to use the ACE frameworks.

C++ Network Programming, Volume 2: Systematic Reuse with ACE and Frameworks

Chapter 1. Object-Oriented Frameworks for Network Programming
 Section 1.1. An Overview of Object-Oriented Frameworks
 Section 1.2. Comparing Software Development and Reuse Techniques
 Section 1.3. Applying Frameworks to Network Programming
 Section 1.4. A Tour through the ACE Frameworks
 Section 1.5. Example: A Networked Logging Service
 Section 1.6. Summary

Chapter 2. Service and Configuration Design Dimensions
 Section 2.1. Service and Server Design Dimensions
 Section 2.2. Configuration Design Dimensions
 Section 2.3. Summary

Chapter 3. The ACE Reactor Framework
 Section 3.1. Overview
 Section 3.2. The ACE_Time_Value Class
 Section 3.3. The ACE_Event_Handler Class
 Section 3.4. The ACE Timer Queue Classes
 Section 3.5. The ACE_Reactor Class
 Section 3.6. Summary

Chapter 4. ACE Reactor Implementations
 Section 4.1. Overview
 Section 4.2. The ACE_Select_Reactor Class
 Section 4.3. The ACE_TP_Reactor Class
 Section 4.4. The ACE_WFMO_Reactor Class
 Section 4.5. Summary

Chapter 5. The ACE Service Configurator Framework
 Section 5.1. Overview
 Section 5.2. The ACE_Service_Object Class
 Section 5.3. The ACE_Service_Repository Classes
 Section 5.4. The ACE_Service_Config Class
 Section 5.5. Summary

Chapter 6. The ACE Task Framework
 Section 6.1. Overview
 Section 6.2. The ACE_Message_Queue Class
 Section 6.3. The ACE_Task_Class
 Section 6.4. Summary

Chapter 7. The ACE Acceptor-Connector Framework
 Section 7.1. Overview
 Section 7.2. The ACE_Svc_Handler Class
 Section 7.3. The ACE_Acceptor Class
 Section 7.4. The ACE_Connector Class
 Section 7.5. Summary

Chapter 8. The ACE Proactor Framework
 Section 8.1. Overview
 Section 8.2. The Asynchronous I/O Factory Classes
 Section 8.3. The ACE_Handler Class
 Section 8.4. The Proactive Acceptor-Connector Classes
 Section 8.5. The ACE_Proactor Class
 Section 8.6. Summary

Chapter 9. The ACE Streams Framework
 Section 9.1. Overview
 Section 9.2. The ACE_Module Class
 Section 9.3. The ACE_Stream Class
 Section 9.4. Summary

Glossary

Bibliography


The chapters in the book are organized as follows:

Chapter 1 introduces the concept of an object-oriented framework and shows how frameworks differ from other reuse techniques, such as class libraries, components, patterns, and model-integrated computing. We then outline the frameworks in the ACE toolkit that are covered in subsequent chapters.

Chapter 2 completes the domain analysis begun in C++NPv1, which covered the communication protocols and mechanisms, and the concurrency architectures used by networked applications. The focus in this book is on the service and configuration design dimensions that address key networked application properties, such as duration and structure, how networked services are identified, and the time at which they are bound together to form complete applications.

Chapter 3 describes the design and use of the ACE Reactor framework, which implements the Reactor pattern [POSA2] to allow event-driven applications to demultiplex and dispatch service requests that are delivered to an application from one or more clients.

Chapter 4 then describes the design and use of the most common implementations of the ACE_Reactor interface, which support a wide range of OS event demultiplexing mechanisms, including select(), WaitForMultipleObjects(), XtAppMainLoop(), and /dev/poll.

Chapter 5 describes the design and use of the ACE Service Configurator framework. This framework implements the Component Configurator pattern [POSA2] to allow an application to link/unlink its component service implementations at run time without having to modify, recompile, or relink the application statically.

Chapter 6 describes the design and effective use of the ACE Task framework. This framework can be used to implement key concurrency patterns, such as Active Object and Half-Sync/Half-Async [POSA2].

Chapter 7 describes the design and effective use of the ACE Acceptor-Connector framework. This framework implements the Acceptor-Connector pattern [POSA2] to decouple the connection and initialization of cooperating peer services in a networked system from the processing they perform once connected and initialized.

Chapter 8 describes the design and use of the ACE Proactor framework. This framework implements the Proactor and Acceptor-Connector patterns [POSA2] to allow event-driven applications to efficiently demultiplex and dispatch service requests triggered by the completion of asynchronously initiated operations.

Chapter 9 describes the design and use of the ACE Streams framework. This framework implements the Pipes and Filters pattern [POSA1] to provide a structure for systems that process streams of data.

The book concludes with a glossary of technical terms, a list of references for further study, and a general subject index.

The chapters are organized to build upon each other and to minimize forward references. We therefore recommend that you read the chapters in order.