The ADAPTIVE Communication Environment C++ Framework

This 4-day workshop prepares students to confidently use the ADAPTIVE Communication Environment (ACE) to overcome network programming complexities and challenges.

Overview

In this hands-on course, students learn how to implement interprocess communication (IPC) mechanisms using the ACE IPC service access point (SAP) classes and the acceptor/connector pattern.

The course also covers how to use a reactor in event demultiplexing and dispatching; how to implement thread-safe applications using the ACE thread encapsulation class categories; and how to identify appropriate ACE components to use for specific application needs.

Prerequisites

To get the most out of this course, we recommend students are comfortable with the C++ language (including templates), software development in a Unix or NT environment, and client-server architecture and network programming concepts.

Duration & Format

4 days (24 hours)

Outline

The following topics are covered in this course:

  • ACE architecture and components
  • How to access operating system services
  • Overview of network programming interfaces
  • Network programming using TCP and UDP classes in ACE
  • Acceptor and connector patterns
  • Event demultiplexing with the reactor
  • Implementing event handlers for I/O, timers, and signals
  • Thread management and synchronization
  • Shared-memory allocators and specialized local-memory allocators
  • Dynamic configuration with the service configurator
  • Message queues and stream processing
  • Logging and debugging

Professional Training for Modern Technology Teams

Sign up today for open enrollment technology training.

Open Enrollment Courses

Open enrollment courses are a great, cost-effective option for organizations that have an immediate need to train a small number of employees.

View Course Schedule

Customized technology training designed to meet your team's specific needs

Customized Training Programs

Customized training programs can be delivered on-site, in our training lab, or online to help organizations enhance the skills of their internal development teams.

Request More Information