15 #ifndef THREAD_HPP_INCLUDED
16 #define THREAD_HPP_INCLUDED
20 #include <boost/cstdint.hpp>
21 #include <boost/noncopyable.hpp>
22 #include <boost/scoped_ptr.hpp>
23 #include <boost/smart_ptr.hpp>
27 #if defined(_MSC_VER) && _MSC_VER <= 1600
32 #include <SDL_mutex.h>
57 :
private boost::noncopyable
68 explicit thread(
int (*
f)(
void*),
void*
data=
nullptr);
96 :
private boost::noncopyable
116 :
private boost::noncopyable
142 :
private boost::noncopyable
235 virtual void run() = 0;
boost::shared_ptr< async_operation > async_operation_ptr
thread(int(*f)(void *), void *data=nullptr)
boost::scoped_ptr< thread > thread_
RESULT execute(async_operation_ptr this_ptr, waiter &wait)
virtual ~async_operation()
GLint GLenum GLsizei GLint GLsizei const GLvoid * data
WAIT_TIMEOUT_RESULT wait_timeout(const mutex &m, unsigned int timeout)
static active_operation_list active_
virtual ACTION process()=0
GLbitfield GLuint64 timeout
boost::uint32_t get_current_thread_id()
std::list< async_operation_ptr > active_operation_list
bool wait(const mutex &m)