# threadwrap.h

Go to the documentation of this file.

    00001 ///
    00002 /// \file       threadwrap.h
    00003 ///             RAII Wrapper for a single thread.
    00004 ///
    00005
    00006 /*
    00007     Copyright (C) 2009, Nicolas VIVIEN
    00008
    00009     This program is free software; you can redistribute it and/or modify
    00010     it under the terms of the GNU General Public License as published by
    00011     the Free Software Foundation; either version 2 of the License, or
    00012     (at your option) any later version.
    00013
    00014     This program is distributed in the hope that it will be useful,
    00015     but WITHOUT ANY WARRANTY; without even the implied warranty of
    00016     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    00017
    00018     See the GNU General Public License in the COPYING file at the
    00019     root directory of this project for more details.
    00020 */
    00021
    00022 #ifndef __BARRY_THREADWRAP_H__
    00023 #define __BARRY_THREADWRAP_H__
    00024
    00025 #include "dll.h"
    00026 #include <pthread.h>
    00027
    00028 namespace Barry {
    00029
    00030 class BXEXPORT Thread
    00031 {
    00032 private:
    00033         pthread_t thread;
    00034
    00035 public:
    00036         Thread(int socket, void *(*callback)(void *data), void *data);
    00037         ~Thread();
    00038
    00039         void Dispose();
    00040 };
    00041
    00042 } // namespace Barry
    00043
    00044 #endif
    00045