Add --enable-mutex-errorcheck option #25
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Enabling this option initializes mutexes with a
pthread_mutexattr_type of PTHREAD_MUTEX_ERRORCHECK.
All locks and unlocks will then check the return value
and abort() if there is an error.
We define these macros:
CCI_LOCK_INIT(x)
CCI_LOCK_DESTROY(x)
CCI_LOCK(x)
CCI_UNLOCK(x)
There is no need to initialize and pass a pthread_mutexattr_t
to CCI_LOCK_INIT().
This patch only alters src/api. It does not add this to any
transports.
To use them, simply replace the pthread_mutex_* with the CCI_*
equivalent. The macros cannot return a value, so do not try to
error check them. If you need error checking, use the configure
option.