As we've shown so far, ACE permits tremendous flexibility when you are designing your applications. You can exchange classes, change behavior by using different strategies and template arguments, and easily change services to use multiple threads, multiple processes, use the Reactor framework, and/or use the Proactor framework.
However, you often need the flexibility to configure your application differently at runtime to use different services. You might need to do this for the following reasons.
• Your customers or users need to be able to move certain services to other machines or processes to make better use of their network or other available resources.
• You may offer optional pieces of a ...