Add mutex locking functions that also block asyncs.
authorMark H Weaver <mhw@netris.org>
Sun, 17 Nov 2013 09:00:29 +0000 (04:00 -0500)
committerMark H Weaver <mhw@netris.org>
Sat, 23 Nov 2013 19:39:51 +0000 (14:39 -0500)
commite676a4c34211efc8a7558afb0f8572b88a89c683
treeb28d19127e14d401629195012a8695dc3a224501
parent1e42832af07ea6ac68ecbe4f6a3376ff509a2a51
Add mutex locking functions that also block asyncs.

* libguile/async.h (scm_i_pthread_mutex_lock_block_asyncs,
  scm_i_pthread_mutex_unlock_unblock_asyncs): New macros.

* libguile/threads.c (do_unlock_with_asyncs): New static helper.
  (scm_i_dynwind_pthread_mutex_lock_block_asyncs): New function.

* libguile/threads.h (scm_i_dynwind_pthread_mutex_lock_block_asyncs):
  Add prototype.
libguile/async.h
libguile/threads.c
libguile/threads.h