3 |
#ifndef SCM_COOP_THREADS_H |
#ifndef SCM_COOP_THREADS_H |
4 |
#define SCM_COOP_THREADS_H |
#define SCM_COOP_THREADS_H |
5 |
|
|
6 |
/* Copyright (C) 1996,1997,1998,2000 Free Software Foundation, Inc. |
/* Copyright (C) 1996,1997,1998,2000, 2002 Free Software Foundation, Inc. |
7 |
* |
* |
8 |
* This program is free software; you can redistribute it and/or modify |
* This program is free software; you can redistribute it and/or modify |
9 |
* it under the terms of the GNU General Public License as published by |
* it under the terms of the GNU General Public License as published by |
112 |
SCM_API void coop_qput (coop_q_t *, coop_t *); |
SCM_API void coop_qput (coop_q_t *, coop_t *); |
113 |
SCM_API void *coop_sleephelp (qt_t *, void *, void *); |
SCM_API void *coop_sleephelp (qt_t *, void *, void *); |
114 |
|
|
|
#ifdef GUILE_ISELECT |
|
115 |
SCM_API coop_t *coop_wait_for_runnable_thread (); |
SCM_API coop_t *coop_wait_for_runnable_thread (); |
|
#endif |
|
116 |
|
|
117 |
SCM_API coop_q_t coop_global_runq; /* A queue of runable threads. */ |
SCM_API coop_q_t coop_global_runq; /* A queue of runable threads. */ |
118 |
SCM_API coop_q_t coop_global_sleepq; |
SCM_API coop_q_t coop_global_sleepq; |
119 |
SCM_API coop_q_t coop_tmp_queue; |
SCM_API coop_q_t coop_tmp_queue; |
120 |
SCM_API coop_q_t coop_global_allq; /* A queue of all threads. */ |
SCM_API coop_q_t coop_global_allq; /* A queue of all threads. */ |
121 |
SCM_API coop_t *coop_global_curr; /* Currently-executing thread. */ |
SCM_API coop_t *coop_global_curr; /* Currently-executing thread. */ |
122 |
|
|
123 |
#endif /* SCM_COOP_THREADS_H */ |
#endif /* SCM_COOP_THREADS_H */ |
124 |
|
|