#include "magick/studio.h"#include "magick/exception.h"#include "magick/exception-private.h"#include "magick/memory_.h"#include "magick/semaphore.h"#include "magick/string_.h"#include "magick/thread_.h"#include "magick/thread-private.h"
Go to the source code of this file.
Data Structures | |
| struct | SemaphoreInfo |
Functions | |
| static void | LockMagickMutex (void) |
| static void | UnlockMagickMutex (void) |
| MagickExport void | AcquireSemaphoreInfo (SemaphoreInfo **semaphore_info) |
| MagickExport SemaphoreInfo * | AllocateSemaphoreInfo (void) |
| MagickExport void | DestroySemaphoreInfo (SemaphoreInfo **semaphore_info) |
| MagickExport MagickBooleanType | LockSemaphoreInfo (SemaphoreInfo *semaphore_info) |
| MagickExport void | RelinquishSemaphoreInfo (SemaphoreInfo *semaphore_info) |
| MagickExport MagickBooleanType | SemaphoreComponentGenesis (void) |
| MagickExport void | SemaphoreComponentTerminus (void) |
| MagickExport MagickBooleanType | UnlockSemaphoreInfo (SemaphoreInfo *semaphore_info) |
Variables | |
| static pthread_mutex_t | semaphore_mutex = PTHREAD_MUTEX_INITIALIZER |
| MagickExport void AcquireSemaphoreInfo | ( | SemaphoreInfo ** | semaphore_info | ) |
Definition at line 114 of file semaphore.c.
References AllocateSemaphoreInfo(), LockMagickMutex(), and UnlockMagickMutex().
Referenced by AcquireMagickMemory(), AcquireMagickResource(), AcquirePixelCache(), AcquireUniqueFileResource(), CacheComponentGenesis(), CacheComponentTerminus(), CoderComponentGenesis(), CoderComponentTerminus(), ColorComponentGenesis(), ColorComponentTerminus(), ConfigureComponentGenesis(), ConfigureComponentTerminus(), ConstituteComponentGenesis(), ConstituteComponentTerminus(), DelegateComponentGenesis(), DelegateComponentTerminus(), DestroyMagickMemory(), GetMagickResourceLimit(), InitializeCoderList(), InitializeColorList(), InitializeConfigureList(), InitializeDelegateList(), InitializeLocaleList(), InitializeLogList(), InitializeMagickList(), InitializeMagicList(), InitializeMimeList(), InitializePolicyList(), InitializeTypeList(), ListMagickResourceInfo(), LocaleComponentGenesis(), LocaleComponentTerminus(), LogComponentGenesis(), LogComponentTerminus(), MagicComponentGenesis(), MagicComponentTerminus(), MagickComponentGenesis(), MagickComponentTerminus(), MimeComponentGenesis(), MimeComponentTerminus(), PolicyComponentGenesis(), PolicyComponentTerminus(), RandomComponentGenesis(), RandomComponentTerminus(), ReadImage(), RegistryComponentGenesis(), RegistryComponentTerminus(), RelinquishMagickResource(), ResourceComponentGenesis(), ResourceComponentTerminus(), SetImageRegistry(), SetMagickResourceLimit(), TypeComponentGenesis(), TypeComponentTerminus(), and WriteImage().
| MagickExport SemaphoreInfo* AllocateSemaphoreInfo | ( | void | ) |
Definition at line 144 of file semaphore.c.
References AcquireAlignedMemory(), GetMagickThreadId(), SemaphoreInfo::id, MagickSignature, SemaphoreInfo::mutex, pthread_mutex_init, pthread_mutexattr_destroy, pthread_mutexattr_init, SemaphoreInfo::reference_count, RelinquishAlignedMemory(), ResetMagickMemory(), ResourceLimitFatalError, SemaphoreInfo::signature, and ThrowFatalException.
Referenced by AcquireImage(), AcquirePixelCache(), AcquireRandomInfo(), AcquireSemaphoreInfo(), CloneImage(), GetBlobInfo(), GetExceptionInfo(), GetQuantumInfo(), NewHashmap(), NewLinkedList(), and NewSplayTree().
| MagickExport void DestroySemaphoreInfo | ( | SemaphoreInfo ** | semaphore_info | ) |
Definition at line 217 of file semaphore.c.
References LockMagickMutex(), MagickSignature, pthread_mutex_destroy, RelinquishAlignedMemory(), and UnlockMagickMutex().
Referenced by CacheComponentTerminus(), CoderComponentTerminus(), ColorComponentTerminus(), ConfigureComponentTerminus(), ConstituteComponentTerminus(), DelegateComponentTerminus(), DestroyBlob(), DestroyExceptionInfo(), DestroyHashmap(), DestroyImage(), DestroyLinkedList(), DestroyMagickMemory(), DestroyPixelCache(), DestroyPixelStream(), DestroyQuantumInfo(), DestroyRandomInfo(), DestroySplayTree(), IncreaseHashmapCapacity(), LocaleComponentTerminus(), LogComponentTerminus(), MagicComponentTerminus(), MagickComponentTerminus(), MimeComponentTerminus(), PolicyComponentTerminus(), RandomComponentTerminus(), RegistryComponentTerminus(), ResourceComponentTerminus(), and TypeComponentTerminus().
| static void LockMagickMutex | ( | void | ) | [static] |
Definition at line 252 of file semaphore.c.
References GetExceptionMessage(), pthread_mutex_lock, and semaphore_mutex.
Referenced by AcquireSemaphoreInfo(), DestroySemaphoreInfo(), and SemaphoreComponentGenesis().
| MagickExport MagickBooleanType LockSemaphoreInfo | ( | SemaphoreInfo * | semaphore_info | ) |
Definition at line 286 of file semaphore.c.
References GetMagickThreadId(), SemaphoreInfo::id, IsMagickThreadEqual(), MagickFalse, MagickTrue, SemaphoreInfo::mutex, pthread_mutex_lock, and SemaphoreInfo::reference_count.
Referenced by AcquireMagickMemory(), AcquireMagickResource(), AcquirePixelCache(), AcquireUniqueFileResource(), AddValueToSplayTree(), AppendValueToLinkedList(), CacheComponentTerminus(), CatchException(), ClearLinkedList(), ClearMagickException(), CloneSplayTree(), CloseMagickLog(), ClosePixelCacheOnDisk(), CoderComponentTerminus(), ColorComponentTerminus(), ConfigureComponentTerminus(), DelegateComponentTerminus(), DeleteNodeByValueFromSplayTree(), DeleteNodeFromSplayTree(), DestroyBlob(), DestroyExceptionInfo(), DestroyHashmap(), DestroyImage(), DestroyLinkedList(), DestroyMagickMemory(), DestroyPixelCache(), DestroyPixelStream(), DestroyRandomInfo(), DestroySplayTree(), GenerateEntropicChaos(), GetCoderInfoList(), GetCoderList(), GetColorInfo(), GetColorInfoList(), GetColorList(), GetConfigureInfo(), GetConfigureInfoList(), GetConfigureList(), GetDelegateInfo(), GetDelegateInfoList(), GetDelegateList(), GetImageMagick(), GetImagePixelCache(), GetImageReferenceCount(), GetLastValueInLinkedList(), GetLocaleInfoList(), GetLocaleList(), GetLogInfo(), GetLogInfoList(), GetLogList(), GetMagicInfo(), GetMagicInfoList(), GetMagickInfo(), GetMagickInfoList(), GetMagickList(), GetMagickResource(), GetMagickResourceLimit(), GetMagicList(), GetMimeInfo(), GetMimeInfoList(), GetMimeList(), GetNextKeyInHashmap(), GetNextKeyInSplayTree(), GetNextValueInHashmap(), GetNextValueInLinkedList(), GetNextValueInSplayTree(), GetPolicyInfo(), GetPolicyInfoList(), GetPolicyList(), GetTypeInfoByFamily(), GetTypeInfoList(), GetTypeList(), GetValueFromHashmap(), GetValueFromLinkedList(), GetValueFromSplayTree(), IncreaseHashmapCapacity(), InheritException(), InitializeCoderList(), InitializeColorList(), InitializeConfigureList(), InitializeDelegateList(), InitializeLocaleList(), InitializeLogList(), InitializeMagickList(), InitializeMagicList(), InitializeMimeList(), InitializePolicyList(), InitializeTypeList(), InsertValueInLinkedList(), InsertValueInSortedLinkedList(), IsRightsAuthorized(), LimitPixelCacheDescriptors(), LinkedListToArray(), ListMagickResourceInfo(), LocaleComponentTerminus(), LogComponentTerminus(), LogMagickEventList(), MagicComponentTerminus(), MagickComponentTerminus(), MimeComponentTerminus(), ModifyImage(), OpenPixelCacheOnDisk(), PersistPixelCache(), PolicyComponentTerminus(), PutEntryInHashmap(), ReadImage(), ReadPixelCacheRegion(), ReferenceBlob(), ReferenceImage(), ReferencePixelCache(), RegistryComponentTerminus(), RelinquishMagickMemory(), RelinquishMagickResource(), RemoveElementByValueFromLinkedList(), RemoveElementFromLinkedList(), RemoveEntryFromHashmap(), RemoveLastElementFromLinkedList(), RemoveNodeByValueFromSplayTree(), RemoveNodeFromSplayTree(), ResetHashmapIterator(), ResetLinkedListIterator(), ResetSplayTree(), ResetSplayTreeIterator(), ResizeMagickMemory(), ResourceComponentTerminus(), SetImageRegistry(), SetLogEventMask(), SetLogFormat(), SetMagickResourceLimit(), SetRandomKey(), TypeComponentTerminus(), UnregisterMagickInfo(), WriteImage(), and WritePixelCacheRegion().
| MagickExport void RelinquishSemaphoreInfo | ( | SemaphoreInfo * | semaphore_info | ) |
Definition at line 350 of file semaphore.c.
References MagickSignature, SemaphoreInfo::signature, and UnlockSemaphoreInfo().
| MagickExport MagickBooleanType SemaphoreComponentGenesis | ( | void | ) |
Definition at line 375 of file semaphore.c.
References LockMagickMutex(), MagickTrue, and UnlockMagickMutex().
Referenced by MagickCoreGenesis().
| MagickExport void SemaphoreComponentTerminus | ( | void | ) |
Definition at line 400 of file semaphore.c.
Referenced by MagickCoreTerminus().
| static void UnlockMagickMutex | ( | void | ) |
Definition at line 422 of file semaphore.c.
References GetExceptionMessage(), pthread_mutex_unlock, and semaphore_mutex.
Referenced by AcquireSemaphoreInfo(), DestroySemaphoreInfo(), and SemaphoreComponentGenesis().
| MagickExport MagickBooleanType UnlockSemaphoreInfo | ( | SemaphoreInfo * | semaphore_info | ) |
Definition at line 455 of file semaphore.c.
References SemaphoreInfo::id, IsMagickThreadEqual(), MagickFalse, MagickTrue, SemaphoreInfo::mutex, pthread_mutex_unlock, and SemaphoreInfo::reference_count.
Referenced by AcquireMagickMemory(), AcquireMagickResource(), AcquirePixelCache(), AcquireUniqueFileResource(), AddValueToSplayTree(), AppendValueToLinkedList(), CacheComponentTerminus(), CatchException(), ClearLinkedList(), ClearMagickException(), CloneSplayTree(), CloseMagickLog(), ClosePixelCacheOnDisk(), CoderComponentTerminus(), ColorComponentTerminus(), ConfigureComponentTerminus(), DelegateComponentTerminus(), DeleteNodeByValueFromSplayTree(), DeleteNodeFromSplayTree(), DestroyBlob(), DestroyExceptionInfo(), DestroyHashmap(), DestroyImage(), DestroyLinkedList(), DestroyMagickMemory(), DestroyPixelCache(), DestroyPixelStream(), DestroyRandomInfo(), DestroySplayTree(), GenerateEntropicChaos(), GetCoderInfoList(), GetCoderList(), GetColorInfo(), GetColorInfoList(), GetColorList(), GetConfigureInfo(), GetConfigureInfoList(), GetConfigureList(), GetDelegateInfo(), GetDelegateInfoList(), GetDelegateList(), GetImageMagick(), GetImagePixelCache(), GetImageReferenceCount(), GetLastValueInLinkedList(), GetLocaleInfoList(), GetLocaleList(), GetLogInfo(), GetLogInfoList(), GetLogList(), GetMagicInfo(), GetMagicInfoList(), GetMagickInfo(), GetMagickInfoList(), GetMagickList(), GetMagickResource(), GetMagickResourceLimit(), GetMagicList(), GetMimeInfo(), GetMimeInfoList(), GetMimeList(), GetNextKeyInHashmap(), GetNextKeyInSplayTree(), GetNextValueInHashmap(), GetNextValueInLinkedList(), GetNextValueInSplayTree(), GetPolicyInfo(), GetPolicyInfoList(), GetPolicyList(), GetTypeInfoByFamily(), GetTypeInfoList(), GetTypeList(), GetValueFromHashmap(), GetValueFromLinkedList(), GetValueFromSplayTree(), IncreaseHashmapCapacity(), InheritException(), InitializeCoderList(), InitializeColorList(), InitializeConfigureList(), InitializeDelegateList(), InitializeLocaleList(), InitializeLogList(), InitializeMagickList(), InitializeMagicList(), InitializeMimeList(), InitializePolicyList(), InitializeTypeList(), InsertValueInLinkedList(), InsertValueInSortedLinkedList(), IsRightsAuthorized(), LiberateSemaphoreInfo(), LimitPixelCacheDescriptors(), LinkedListToArray(), ListMagickResourceInfo(), LocaleComponentTerminus(), LogComponentTerminus(), LogMagickEventList(), MagicComponentTerminus(), MagickComponentTerminus(), MimeComponentTerminus(), ModifyImage(), OpenPixelCacheOnDisk(), PersistPixelCache(), PolicyComponentTerminus(), PutEntryInHashmap(), ReadImage(), ReadPixelCacheRegion(), ReferenceBlob(), ReferenceImage(), ReferencePixelCache(), RegistryComponentTerminus(), RelinquishMagickMemory(), RelinquishMagickResource(), RelinquishSemaphoreInfo(), RemoveElementByValueFromLinkedList(), RemoveElementFromLinkedList(), RemoveEntryFromHashmap(), RemoveLastElementFromLinkedList(), RemoveNodeByValueFromSplayTree(), RemoveNodeFromSplayTree(), ResetHashmapIterator(), ResetLinkedListIterator(), ResetSplayTree(), ResetSplayTreeIterator(), ResizeMagickMemory(), ResourceComponentTerminus(), SetImageRegistry(), SetLogEventMask(), SetLogFormat(), SetMagickResourceLimit(), SetRandomKey(), TypeComponentTerminus(), UnregisterMagickInfo(), WriteImage(), and WritePixelCacheRegion().
pthread_mutex_t semaphore_mutex = PTHREAD_MUTEX_INITIALIZER [static] |
Definition at line 76 of file semaphore.c.
Referenced by LockMagickMutex(), and UnlockMagickMutex().
1.6.1