# libdar::thread_cancellation Class Reference
[Private]

class to be used as parent to provide checkpoints to inherited classes More...

`#include <thread_cancellation.hpp>`

Inherited by libdar::fichier, libdar::null_file, and libdar::tuyau.

List of all members.

## Public Member Functions
| thread_cancellation ()
| the constructor
virtual | ~thread_cancellation ()
| the destructor
void | check_self_cancellation () const
| the checkpoint where is seen whether the current libdar call must abort
void | block_delayed_cancellation (bool mode)
## Static Public Member Functions
static void | init ()
| mandatory initialization static method
static U_I | count ()
| method for debugging/control purposes

## Detailed Description

class to be used as parent to provide checkpoints to inherited classes

the class provides a checkpoints to inherited classes and a mechanism that let any libdar external code to ask the termination of a libdar call executing in a given thread. This does not imply the termination of the thread itself but it implies the return of the thread execution to the code that called libdar

Definition at line 65 of file thread_cancellation.hpp.

## Member Function Documentation

void libdar::thread_cancellation::block_delayed_cancellation | ( | bool | mode | ) |

by default delayed (non immediate) cancellation generate an specific exception it is possible for delayed cancellation only, do block such exceptions for a certain time

Parameters:

  `[in]` | mode | can be set to true to block delayed cancellations

Note:
  when unblocking delayed cancellations, if a delayed cancellation has been requested during the ignore time, it will be thrown by this call

void libdar::thread_cancellation::check_self_cancellation | ( |  | ) | const

the checkpoint where is seen whether the current libdar call must abort

Exceptions:

  | Euser_abort | is thrown if the thread the checkpoint is running from is marked as to be canceled.

static void libdar::thread_cancellation::init | ( |  | ) | `[static]`

mandatory initialization static method

must be called once before any call to thread_cancellation class's methods

The documentation for this class was generated from the following file:

- thread_cancellation.hpp