e$B?\F#$G$9!#e(B
1.8.6-p110e$B$G$b:F8=$9$k$+$I$&$+$O$o$+$i$J$$$N$G$9$,!"!J$?$V$s!Ke(B
Intel Mace$B>e$Ge(Brequire
'glib2’e$B$7$?>uBV$Ge(BKernel#`e$B$r;H$&$H%V%m%Ce(B
e$B%/$9$k$_$?$$$G$9!#e(B
require ‘glib2’
date
http://www.cozmixng.org/~w3ml/index.rb/rabbit-shockers/msg/406
e$B%a!<%kK\J8$,e(BUTF-8e$B$@$C$?$N$GJ8;z2=$1$7$F$$$^$9!#e(B
e$B<jF0$G%V%i%&%6$N%(%s%3!<%G%#%s%0$re(BUTF-8e$B$K$7$F$/$@$5$$!#e(B
e$B$G!"860x$Oe(Bproc_exec_v()e$B$NCf$Ne(B
rb_thread_cancel_timer();
e$B$i$7$$$G$9!#e(B
http://www.cozmixng.org/~w3ml/index.rb/rabbit-shockers/msg/411
e$B$G!“$3$3$i$X$s$,4X78$,$”$k$_$?$$$G$9!#e(B
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-core/10580
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/30581
e$B?\F#$G$9!#e(B
e$BJdB-$G$9!#e(B
e$B$G!“$3$3$i$X$s$,4X78$,$”$k$_$?$$$G$9!#e(B
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-core/10580
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/30581
e$B$3$Ne(Brb_thread_cancel_timer()e$B$N=$@5$Oe(Bruby_1_8e$B$K$OF~$C$F$$$J$/e(B
e$B$Fe(Bruby_1_8_6e$B$K$@$1F~$C$F$$$^$9!#e(B
é ˆè—¤ã§ã™ã€‚
ã•ã‚‰ã«è£œè¶³ã§ã™ã€‚
メール本文ãŒUTF-8ã ã£ãŸã®ã§æ–‡å—化ã‘ã—ã¦ã„ã¾ã™ã€‚
ã§ã€ã“ã“らã¸ã‚“ãŒé–¢ä¿‚ãŒã‚ã‚‹ã¿ãŸã„ã§ã™ã€‚
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-core/10580
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/30581
ã“ã®rb_thread_cancel_timer()ã®ä¿®æ£ã¯ruby_1_8ã«ã¯å…¥ã£ã¦ã„ãªã
ã¦ruby_1_8_6ã«ã ã‘å…¥ã£ã¦ã„ã¾ã™ã€‚
åŽŸå› ã¯ã“ã‚“ãªæ„Ÿã˜ã‚‰ã—ã„ã§ã™ã€‚
親ã§timer thread 起動→fork→exec
ã¨ã„ã†æµã‚Œãªã‚“ã§ã™ãŒã€fork ã—ãŸå¾Œã‚‚ timer_thread ã®IDã¨ã‹ã‚’æŒã£ãŸå¤‰æ•°ã¯
ãã®ã¾ã¾å¼•ã継ãŒã‚Œã¦ã‚‹ã‘ã©ã€fork ã—ãŸå¾Œã«ã¯ãã®threadã¯å˜åœ¨ã—ãªã„。
ã‚ã‚Šã‚‚ã—ãªã„threadã«å¯¾ã—ã¦ã€pthread_join()ã—ã¦ã—ã¾ã†ã‚ã‘ã§ã™ã€‚
大抵ã®å ´åˆã¯ã‚¨ãƒ©ãƒ¼ã«ãªã‚‹ã‚“ã ã‚ã†ã‘ã©ã€ã‚る状æ³ã§ã¯ãŸã¾ãŸã¾å‘¼ã³å‡ºã—ãŒ
æˆåŠŸã—ã¦ã€ã‚ã‚Šã‚‚ã—ãªã„threadã‚’å¾…ã¡ç¶šã‘ã¦ã€å¸°ã£ã¦æ¥ãªããªã‚‹ãƒ»ãƒ»ãƒ»ã€‚
http://www.cozmixng.org/~w3ml/index.rb/rabbit-shockers/msg/414
ã§ã€ã“ã‚“ãªã®ã§è§£æ±ºã™ã‚‹ã‚‰ã—ã„ã§ã™ã€‚
ã“ã‚“ãªé–¢æ•°ã‚’è¿½åŠ ã—ã¦ã€
pthread_create(&time_thread, 0, thread_timer, 0);
ã®å‰ã«ã€
pthread_atfork(NULL, NULL, clear_time_thread);
ã‚’è¿½åŠ ã—ãŸã‚‰ã€å‹•ãよã†ã«ãªã‚Šã¾ã—ãŸã€‚
http://www.cozmixng.org/~w3ml/index.rb/rabbit-shockers/msg/414
ショッカーã¯å„ªç§€ã 。
e$B?\F#$G$9!#e(B
In [email protected]
“[ruby-dev:31838] Re: Kernel#` is blocked with Ruby/GLib2 on Intel
Mac” on Mon, 24 Sep 2007 14:39:03 +0900,
Urabe S. [email protected] wrote:
1.8.6-p110e$B$G$b:F8=$9$k$+$I$&$+$O$o$+$i$J$$$N$G$9$,!"!J$?$V$s!Ke(B
Intel Mace$B>e$Ge(Brequire 'glib2’e$B$7$?>uBV$Ge(BKernel#`e$B$r;H$&$H%V%m%Ce(B
e$B%/$9$k$_$?$$$G$9!#e(B
e$BD>$7$?$O$:$J$N$Ge(Bp110e$B$G$O:F8=$7$J$$$H?.$8$?$$$G$9!#e(B
e$B$^$C$?$/F1$8JQ99$,e(Bp101e$B$GF~$C$F$$$k$N$r3NG’$7$^$7$?!#e(B
e$B$J$N$G!"$?$V$sBg>fIW$=$&$G$9$M!#e(B
e$B$*A{$,$;$7$^$7$?!#e(B
e$BKNIt$G$9!#$J$s$+$9$G$K2r7h$7$F$k$C$]$$$G$9$,e(B
Kouhei S. wrote:
e$B?\F#$G$9!#e(B
1.8.6-p110e$B$G$b:F8=$9$k$+$I$&$+$O$o$+$i$J$$$N$G$9$,!"!J$?$V$s!Ke(B
Intel Mace$B>e$Ge(Brequire 'glib2’e$B$7$?>uBV$Ge(BKernel#`e$B$r;H$&$H%V%m%Ce(B
e$B%/$9$k$_$?$$$G$9!#e(B
e$BD>$7$?$O$:$J$N$Ge(Bp110e$B$G$O:F8=$7$J$$$H?.$8$?$$$G$9!#e(B
ruby_1_8e$B$KF~$C$F$J$$$N$O$b$C$H$^$7$J=$@5$,$"$k$O$:$@$H;W$$9~$s$G$$$k$+$ie(B