akira yamada wrote:
> [ruby-core:2133] [ruby-core:2137]の通り
> --enable-pthreadのときにsleepがうまく動かなくなります。

引数なしのsleepもうまく動かないようでした。
[ruby-core:2133][ruby-core:2137]に加えて
こんな感じの変更でよいでしょうか?


--- eval.c	17 Jul 2004 02:23:51 -0000	1.616.2.37
+++ eval.c	21 Jul 2004 16:32:23 -0000
@@ -10372,13 +10372,16 @@
 	curr_thread == curr_thread->next ||
 	curr_thread->status == THREAD_TO_KILL) {
 	int n;
+	int thr_critical = rb_thread_critical;
 #ifndef linux
 	double d, limit;
 	limit = timeofday()+(double)time.tv_sec+(double)time.tv_usec*1e-6;
 #endif
 	for (;;) {
+	    rb_thread_critical = Qtrue;
 	    TRAP_BEG;
 	    n = select(0, 0, 0, 0, &time);
+	    rb_thread_critical = thr_critical;
 	    TRAP_END;
 	    if (n == 0) return;
 	    if (n < 0) {

-- 
やまだあきら / akira yamada  <http://arika.org>