The facilities of the Networking TS provide a framework within which testable, extensible, asynchronous programs may be written in C++. Alongside this the Networking TS provides concrete “I/O object” types which provide means of performing I/O and thereby allow the authoring of such programs immediately.
Invariably these provided I/O objects will not be sufficient. Datagram and stream sockets do not describe the entire universe of asynchronous I/O. When the time comes to author new I/O objects it will be important to do so within the framework of the Networking TS thereby providing facilities ripe for reuse and composition.
Robert Leahy lead software engineer at MayStreet will explore the task of authoring new I/O object types by motivating and illustrating the facilities and patterns the Networking TS provides for this purpose.