[#19449] new keyword once — "K.Kosako" <kosako@...>
String#indexにKarp-Rabinアルゴリズムを導入しても、それほど速くならないのは、
[#19457] equality between "a" and Exception.new("a") — Tanaka Akira <akr@...17n.org>
ふと気がついたのですが、
まつもと ゆきひろです
In article <1044245817.592933.31973.nullmailer@picachu.netlab.jp>,
In article <1044245817.592933.31973.nullmailer@picachu.netlab.jp>,
まつもと ゆきひろです
In article <1044329220.257740.28127.nullmailer@picachu.netlab.jp>,
まつもと ゆきひろです
In article <1044331431.138035.28173.nullmailer@picachu.netlab.jp>,
まつもと ゆきひろです
In article <1044332948.099873.28206.nullmailer@picachu.netlab.jp>,
まつもと ゆきひろです
In article <1044338964.502066.28474.nullmailer@picachu.netlab.jp>,
まつもと ゆきひろです
まつもと ゆきひろです
さらに気が付いたのですが、
まつもと ゆきひろです
あー、言葉が足りなかったことに気がつきました。
まつもと ゆきひろです
[#19463] Re: [ruby-cvs] ruby: * re.c (rb_memsearch): algolithm body of String#index. — "Akinori MUSHA" <knu@...>
At Mon, 3 Feb 2003 05:34:15 +0000,
[#19494] [Oniguruma] Version 1.7 — "K.Kosako" <kosako@...>
ftp.ruby-lang.orgに、onigd20030204.tar.gzを置きました。
[#19498] cpp in mkmf (Re: Problems building mysql ruby 2.4.4 on 1.8) — nobu.nakada@...
なかだです。
[#19510] define_method+super causes replacing self — Minero Aoki <aamine@...>
あおきです。
[#19514] [Oniguruma] Version 1.7.1 — "K.Kosako" <kosako@...>
ftp.ruby-lang.orgに、onigd20030207.tar.gzを置きました。
MoonWolfです。
MoonWolfです。
[#19539] FileUtils.pwd — Tanaka Akira <akr@...17n.org>
ふと気が付いたのですが、ChangeLog の
[#19548] [PATCH] file.c for (PR#389) and (PR#390) — nobu.nakada@...
なかだです。
まつもと ゆきひろです
From: nobu.nakada@nifty.ne.jp
なかだです。
From: nobu.nakada@nifty.ne.jp
From: pegacorn@jcom.home.ne.jp
[#19562] Fw: Ruby 1.8.0 bugs — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
MoonWolfです。
[#19578] target host type と RUBY_PLATFORM — pegacorn@...
cygwin 環境で
まつもと ゆきひろです
From: matz@ruby-lang.org (Yukihiro Matsumoto)
まつもと ゆきひろです
From: matz@ruby-lang.org (Yukihiro Matsumoto)
まつもと ゆきひろです
[#19603] 1.6.8でprotected/privateなメソッドがスコープ外から見えてしまう — NISHI Takao <zophos@...9.com>
にし@おかやまです。
[#19617] module A::B — "K.Kosako" <kosako@...>
現在の実装で、class A::Bの場合に、Aをcref環境に積まないのは、
[#19626] Re: [ruby-cvs] ruby: * eval.c (rb_thread_remove): thread may die in the process of — nobu.nakada@...
なかだです。
[#19638] [Oniguruma] Version 1.8.0 — "K.Kosako" <kosako@...>
ftp.ruby-lang.orgに、onigd20030222.tar.gzを置きました。
[#19648] Re: SEGV at search_method in eval.c (PR#400) — nobu.nakada@...
なかだです。
[#19655] Fw: Debugger Not Working — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
[#19665] Custom node — Shinya Hayakawa <tetryl@...>
はじめまして。早川と申します。
[#19668] File.chomp — Shin-ichiro HARA <sinara@...>
原です。
なかだです。
こんにちは、なかむら(う)です。
わたなべです。
[ruby-dev:19629] Re: [ruby-cvs] ruby: * eval.c (rb_thread_remove): thread may die in the process of
In message "[ruby-dev:19626] Re: [ruby-cvs] ruby: * eval.c (rb_thread_remove): thread may die in the process of"
on 03/02/21, nobu.nakada@nifty.ne.jp <nobu.nakada@nifty.ne.jp> writes:
|
|なかだです。
|
|At Thu, 20 Feb 2003 10:09:32 +0000,
|matz wrote:
|> Log:
|> * eval.c (rb_thread_remove): thread may die in the process of
|> rb_thread_die(). this change was suggested by Rudi Cilibrasi
|> <cilibrar@drachma.ugcs.caltech.edu>.
|
|たぶんこれだと思うんですが、rb_thread_wait_other_threads()で無
|限ループになります。
|
|$ ruby -e 'Thread.new {}'
|
|というか、そもそもrb_thread_die()はスレッドをTHREAD_KILLEDにす
|るための関数なので、mayじゃなくてmustだろうと思うんですが、どう
|いう指摘だったんでしょうか。
こんな感じ。MPI Rubyで動かないってことですね。でも、言われて
みれば確かにそうですよねえ。
まつもと ゆきひろ /:|)
In message "Thread bug + fix for ruby 1.8.0 CVS snapshot / MPI-Ruby fix"
on 03/02/13, Rudi Cilibrasi <cilibrar@drachma.ugcs.caltech.edu> writes:
|
|
|Hi Matz,
|
|I must compliment you on your excellent language Ruby which I use
|enthusiastically at work. I have noticed that there seems to be a
|bug with thread scheduling and cleanup, and have found a fix which
|may be useful to you. In particular, I am using MPI Ruby, which works
|fine until the program cleans up ready to exit, and then segfaults.
|I am working against the latest CVS snapshot, Ruby version 1.8.0.
|After adding the two lines I detail below to eval.c, I find that MPI-Ruby
|works fine as hoped. Please look for 'cilibrar' marker.
|
|Best regards,
|
|Rudi
|
|--------------------------------------------------------------------------
|
|In eval.c, two lines are added; the first is in rb_thread_remove,
|on line 7909:
|static void
|rb_thread_remove(th)
| rb_thread_t th;
|{
| if (th->status == THREAD_KILLED) return;
|
| rb_thread_ready(th);
| rb_thread_die(th);
| if (th->status == THREAD_KILLED) return; /* cilibrar */
| th->prev->next = th->next;
| th->next->prev = th->prev;
|}
|This double check is necessary, because a thread may be killed extraneously.
|
|Secondly, on line 8937 in rb_thread_start_0:
| rb_thread_schedule();
| exit(0); /* cilibrar */
| return 0;\\/* not reached */
|
|This seems helpful because the not-reached part of code can be reached
|on termination of last Ruby thread.