18 #ifndef MAGICKCORE_THREAD_H 19 #define MAGICKCORE_THREAD_H 21 #if defined(__cplusplus) || defined(c_plusplus) 25 #if defined(MAGICKCORE_WINDOWS_SUPPORT) && !defined(__MINGW32__) 29 #if defined(MAGICKCORE_THREAD_SUPPORT) 30 typedef pthread_t MagickThreadType;
31 #elif defined(MAGICKCORE_WINDOWS_SUPPORT) 32 typedef DWORD MagickThreadType;
34 typedef pid_t MagickThreadType;
37 #if defined(MAGICKCORE_THREAD_SUPPORT) 38 typedef pthread_key_t MagickThreadKey;
39 #elif defined(MAGICKCORE_WINDOWS_SUPPORT) 40 typedef DWORD MagickThreadKey;
42 typedef void *MagickThreadKey;
45 extern MagickExport MagickBooleanType
46 CreateMagickThreadKey(MagickThreadKey *,
void (*destructor)(
void *)),
47 DeleteMagickThreadKey(MagickThreadKey),
48 SetMagickThreadValue(MagickThreadKey,
const void *);
50 extern MagickExport
void 51 *GetMagickThreadValue(MagickThreadKey);
54 extern MagickExport MagickBooleanType
55 MagickCreateThreadKey(MagickThreadKey *),
56 MagickDeleteThreadKey(MagickThreadKey),
57 MagickSetThreadValue(MagickThreadKey,
const void *);
59 extern MagickExport
void 60 *MagickGetThreadValue(MagickThreadKey);
62 #if defined(__cplusplus) || defined(c_plusplus)