asio 0.3.8rc3 | Home | Reference | Tutorial | Examples | Design

Reference | Class Hierarchy | Class Index | Member Index

# asio::io_service::work Class Reference

List of all members.

## Detailed Description

Class to inform the io_service when it has work to do.

The work class is used to inform the io_service when work starts and finishes. This ensures that the io_service's run() function will not exit while work is underway, and that it does exit when there is no unfinished work remaining.

The work class is copy-constructible so that it may be used as a data member in a handler class. It is not assignable.

## Public Member Functions

| work (asio::io_service &io_service)
| Constructor notifies the io_service that work is starting.
| work (const work &other)
| Copy constructor notifies the io_service that work is starting.
| ~work ()
| Destructor notifies the io_service that the work is complete.
asio::io_service & | io_service ()
| Get the io_service associated with the work.

## Constructor & Destructor Documentation

asio::io_service::work::work | ( | asio::io_service & | io_service | ) | `[explicit]`

Constructor notifies the io_service that work is starting.

The constructor is used to inform the io_service that some work has begun. This ensures that the io_service's run() function will not exit while the work is underway.

asio::io_service::work::work | ( | const work & | other | ) |

Copy constructor notifies the io_service that work is starting.

The constructor is used to inform the io_service that some work has begun. This ensures that the io_service's run() function will not exit while the work is underway.

asio::io_service::work::~work | ( |  | ) |

Destructor notifies the io_service that the work is complete.

The destructor is used to inform the io_service that some work has finished. Once the count of unfinished work reaches zero, the io_service's run() function is permitted to exit.

## Member Function Documentation

asio::io_service & asio::io_service::work::io_service | ( |  | ) |

Get the io_service associated with the work.

asio 0.3.8rc3 | Home | Reference | Tutorial | Examples | Design