1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-04-30 03:40:34 +02:00

* null-threads.h (scm_null_mutex, scm_null_mutex_init,

scm_null_mutex_lock, scm_null_mutex_unlock,
scm_null_mutex_destroy, scm_null_condvar, scm_null_condvar_init,
scm_null_condvar_wait, scm_null_condvar_signal,
scm_null_condvar_destroy): Removed.
(scm_mutex_init, scm_mutex_lock, scm_mutex_unlock, scm_cond_init,
scm_cond_wait, scm_cond_signal, scm_cond_broadcast,
scm_cond_destory): Do not define, they are now deprecated and
handled by threads.{h,c}.

* null-threads.c (scm_null_mutex, scm_null_cond): Define here.
(scm_threads_init): Create smobs here, using the appropriate
sizes.
(block): Removed, now unused.
(scm_c_thread_exited_p): New.
(scm_null_mutex_init, scm_null_mutex_lock, scm_null_mutex_unlock,
scm_null_mutex_destroy, scm_null_condvar_init,
scm_null_condvar_wait, scm_null_condvar_signal,
scm_null_condvar_destroy): Removed and updated users to do their
task directly.
(scm_try_mutex, timeval_subtract,
scm_timed_wait_condition_variable,
scm_broadcast_condition_variable): New.
(scm_wait_condition_variable): Removed.
This commit is contained in:
Marius Vollmer 2002-10-27 20:12:27 +00:00
parent 79cd5b8eda
commit 4b9154e73e
2 changed files with 125 additions and 115 deletions

View file

@ -54,36 +54,6 @@
#define SCM_CRITICAL_SECTION_END
#define SCM_THREAD_SWITCHING_CODE
typedef struct scm_null_mutex {
int locked;
} scm_null_mutex;
SCM_API int scm_null_mutex_init (scm_null_mutex *);
SCM_API int scm_null_mutex_lock (scm_null_mutex *);
SCM_API int scm_null_mutex_unlock (scm_null_mutex *);
SCM_API int scm_null_mutex_destroy (scm_null_mutex *);
typedef scm_null_mutex scm_t_mutex;
#define scm_mutex_init scm_null_mutex_init
#define scm_mutex_lock scm_null_mutex_lock
#define scm_mutex_unlock scm_null_mutex_unlock
typedef struct scm_null_condvar {
int signalled;
} scm_null_condvar;
SCM_API int scm_null_condvar_init (scm_null_condvar *);
SCM_API int scm_null_condvar_wait (scm_null_condvar *, scm_null_mutex *);
SCM_API int scm_null_condvar_signal (scm_null_condvar *);
SCM_API int scm_null_condvar_destroy (scm_null_condvar *);
typedef scm_null_condvar scm_t_cond;
#define scm_cond_init scm_null_condvar_init
#define scm_cond_wait scm_null_condvar_wait
#define scm_cond_signal scm_null_condvar_signal
#define scm_cond_broadcast scm_null_condvar_signal /* yes */
#define scm_cond_destroy scm_null_condvar_destroy
SCM_API void *scm_null_threads_data;
#define SCM_THREAD_LOCAL_DATA (scm_null_threads_data)