summaryrefslogtreecommitdiff
path: root/thread.c
diff options
context:
space:
mode:
authorusa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-07-28 12:27:43 +0000
committerusa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-07-28 12:27:43 +0000
commita73ba1def712921b5ab6d13dd8055cbb687c4641 (patch)
treee255fcb031ce80fd4810454b0b7ee99c34e8dbda /thread.c
parent517fd61e142698f8001aec80a61c0d3a139b5cef (diff)
* thread_win32.[ch] (cond_every_entry, rb_thread_cond_struct): reverted
r18239 because r18245 made the changes unnecessary. * thread.c (rb_mutex_struct): define after including thread_{pthread, win32}.c. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18248 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'thread.c')
-rw-r--r--thread.c21
1 files changed, 11 insertions, 10 deletions
diff --git a/thread.c b/thread.c
index c27595a21a..c25e8b1f65 100644
--- a/thread.c
+++ b/thread.c
@@ -62,16 +62,6 @@ static double timeofday(void);
struct timeval rb_time_interval(VALUE);
static int rb_thread_dead(rb_thread_t *th);
-typedef struct rb_mutex_struct
-{
- rb_thread_lock_t lock;
- rb_thread_cond_t cond;
- struct rb_thread_struct volatile *th;
- volatile int cond_waiting, cond_notified;
- struct rb_mutex_struct *next_mutex;
-} mutex_t;
-
-static void rb_mutex_unlock_all(mutex_t *mutex);
static void rb_check_deadlock(rb_vm_t *vm);
void rb_signal_exec(rb_thread_t *th, int sig);
@@ -284,6 +274,17 @@ terminate_i(st_data_t key, st_data_t val, rb_thread_t *main_thread)
return ST_CONTINUE;
}
+typedef struct rb_mutex_struct
+{
+ rb_thread_lock_t lock;
+ rb_thread_cond_t cond;
+ struct rb_thread_struct volatile *th;
+ volatile int cond_waiting, cond_notified;
+ struct rb_mutex_struct *next_mutex;
+} mutex_t;
+
+static void rb_mutex_unlock_all(mutex_t *mutex);
+
void
rb_thread_terminate_all(void)
{