1
/* Copyright (C) 2000 MySQL AB
3
This program is free software; you can redistribute it and/or modify
4
it under the terms of the GNU General Public License as published by
5
the Free Software Foundation; version 2 of the License.
7
This program is distributed in the hope that it will be useful,
8
but WITHOUT ANY WARRANTY; without even the implied warranty of
9
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10
GNU General Public License for more details.
12
You should have received a copy of the GNU General Public License
13
along with this program; if not, write to the Free Software
14
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */
16
/* Defines to make different thread packages compatible */
18
#ifndef DRIZZLED_INTERNAL_THREAD_VAR_H
19
#define DRIZZLED_INTERNAL_THREAD_VAR_H
22
#include <boost/thread/recursive_mutex.hpp>
23
#include <boost/thread/mutex.hpp>
24
#include <boost/thread/shared_mutex.hpp>
25
#include <boost/thread/condition_variable.hpp>
32
struct st_my_thread_var
34
boost::condition_variable_any suspend;
36
boost::mutex * volatile current_mutex;
37
boost::condition_variable_any * volatile current_cond;
56
extern struct st_my_thread_var *_my_thread_var(void);
57
#define my_thread_var (::drizzled::internal::_my_thread_var())
59
} /* namespace internal */
60
} /* namespace drizzled */
62
#endif /* DRIZZLED_INTERNAL_THREAD_VAR_H */