###  | # Boost.Threads ## Header <boost/thread/exceptions.hpp>

## Contents

Introduction
Classes

Class `lock_error`

Class `lock_error` synopsis
Class `lock_error` constructors and destructor

Class `thread_resource_error`

Class `thread_resource_error` synopsis
Class `thread_resource_error` constructors and destructor

## Introduction

Include the header <boost/thread/exceptions.hpp> to define the exception types that may be thrown by Boost.Threads classes.

## Classes

### Class `lock_error`

The lock_error class defines an exception type thrown to indicate a locking related error has been detected. Examples of such errors include a lock operation which can be determined to result in a deadlock, or unlock operations attempted by a thread that does not own the lock.

#### Class `lock_error` synopsis

    namespace boost
    {
        class lock_error : public std::logical_error
        {
        public:
            lock_error();
        };
    };

#### Class `lock_error` constructors and destructor

    lock_error();

Effects: Constructs a `lock_error` object.

### Class `thread_resource_error`

The thread_resource_error class defines an exception type that is thrown by constructors in the Boost.Threads library when thread related resources can not be acquired. This does not include memory allocation failures which instead throw std::bad_alloc.

#### Class `thread_resource_error` synopsis

    namespace boost
    {
        class thread_resource_error : public std::runtime_error
        {
        public:
            thread_resource_error();
        };
    };

#### Class `thread_resource_error` constructors and destructor

    thread_resource_error();

Effects: Constructs a `thread_resource_error` object.

Revised 05 November, 2001

© Copyright William E. Kempf 2001-2002. All Rights Reserved.

Permission to use, copy, modify, distribute and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. William E. Kempf makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty.