36#include <visp3/core/vpConfig.h>
37#include <visp3/core/vpException.h>
39#if defined(VISP_BUILD_DEPRECATED_FUNCTIONS) && (defined(VISP_HAVE_PTHREAD) || (defined(_WIN32) && !defined(WINRT_8_0)))
41#if defined(VISP_HAVE_PTHREAD)
49# pragma clang diagnostic push
50# pragma clang diagnostic ignored "-Wnonportable-system-include-path"
59# pragma clang diagnostic pop
64#ifdef ENABLE_VISP_NAMESPACE
83#if defined(VISP_HAVE_PTHREAD)
91 typedef LPTHREAD_START_ROUTINE
Fn;
123#if defined(VISP_HAVE_PTHREAD)
124 int err = pthread_create(&
m_handle,
nullptr, fn, args);
129 DWORD dwThreadIdArray;
147#if defined(VISP_HAVE_PTHREAD)
166#if defined(VISP_HAVE_PTHREAD)
169#if defined(WINRT_8_1)
170 WaitForSingleObjectEx(
m_handle, INFINITE, FALSE);
172 WaitForSingleObject(
m_handle, INFINITE);
201#ifdef ENABLE_VISP_NAMESPACE
error that can be emitted by ViSP classes.
@ cannotUseConstructorError
constructor error
vpThread(vpThread::Fn fn, vpThread::Args args=nullptr)
bool m_isCreated
Indicates if the thread is created.
Handle m_handle
Thread handle.
void create(vpThread::Fn fn, vpThread::Args args=nullptr)
bool m_isJoinable
Indicates if the thread is joinable.