9 #define MAGICKCORE_IMPLEMENTATION  1    10 #define MAGICK_PLUSPLUS_IMPLEMENTATION 1    19 #if defined(MAGICKCORE_HAVE_PTHREAD)    29   if ((sysError=::pthread_mutexattr_init(&attr)) == 0)
    30     if ((sysError=::pthread_mutex_init(&_mutex,&attr)) == 0)
    32         ::pthread_mutexattr_destroy(&attr);
    39 #if defined(_VISUALC_) && defined(_MT)    46   security.nLength=
sizeof(security);
    47   security.lpSecurityDescriptor=(LPVOID) NULL;
    48   security.bInheritHandle=TRUE;
    51   _mutex=::CreateSemaphore(&security,1,1,(LPCSTR) NULL);
    52   if (_mutex != (HANDLE) NULL)
    55     "mutex initialization failed");
    67 #if defined(MAGICKCORE_HAVE_PTHREAD)    68   (void) ::pthread_mutex_destroy(&_mutex);
    70 #if defined(_MT) && defined(_VISUALC_)    71   (void) ::CloseHandle(_mutex);
    78 #if defined(MAGICKCORE_HAVE_PTHREAD)    82   if ((sysError=::pthread_mutex_lock(&_mutex)) == 0)
    87 #if defined(_MT) && defined(_VISUALC_)    88   if (WaitForSingleObject(_mutex,INFINITE) != WAIT_FAILED)
    97 #if defined(MAGICKCORE_HAVE_PTHREAD)   101   if ((sysError=::pthread_mutex_unlock(&_mutex)) == 0)
   106 #if defined(_MT) && defined(_VISUALC_)   107   if (ReleaseSemaphore(_mutex,1,(LPLONG) NULL) == TRUE)
 
MagickPPExport void throwExceptionExplicit(const MagickCore::ExceptionType severity_, const char *reason_, const char *description_=(char *) NULL)