[#11680] fork_and_kill_other_threads — "NAKAMURA, Hiroshi" <nakahiro@...>
なひです。[ruby-list:26165]からもって来ました。
まつもと ゆきひろです
なかだです。
まつもと ゆきひろです
On Sun, 3 Dec 2000 23:33:41 +0900
まつもと ゆきひろです
なひです。
まつもと ゆきひろです
なひです。
まつもと ゆきひろです
なひです。
まつもと ゆきひろです
なひです。
[#11688] [bug?] cgi.rb / rb_exec_end_proc — Takaaki Tateishi <ttate@...>
立石です.
[#11697] ruby_run() — "K.Kosako" <kosako@...>
細かい話で恐縮ですが、プログラムを読んでいて
[#11733] Ruby I18N 改め M17N — とみたまさひろ <tommy@...>
とみたです。
まつもと ゆきひろです
とみたです。
まつもと ゆきひろです
> |もし MBString を Ruby の基本クラスとして実装するんでしたら、
まつもと ゆきひろです
> |struct RString(とstruct RMBString)からorigメンバを削っても、
[#11758] [PATCH & Q] literal in condition — "Nobuyoshi.Nakada" <nobu.nakada@...>
なかだです。
[#11777] Maybe IRB bug!! — Kazuhiro NISHIYAMA <zn@...>
irbで$SAFE=4にしたらSecurityErrorで終了してしまいました。
けいじゅ@日本ラショナルソフトウェアです.
[#11789] mswin32 [Q & patch] mkmf.rb — "U.Nakamura" <usa@...>
こんにちは、なかむら(う)です。
なかだです。
まつもと ゆきひろです
なかだです。
こんにちは、なかむら(う)です。
なかだです。
[#11818] Hash#inspect with symbol key — Hiroshi IGARASHI <igarashi@...>
いがらしです。ご無沙汰してます。
[#11820] pack/unpack の '_' — Koji Arai <JCA02266@...>
新井です。
[#11835] fork exception — nobu.nakada@...
なかだです。
[#11848] Where'd all the Ruby's history gone? — "Akinori MUSHA" <knu@...>
さっき気付いたんですが、 Ruby のレポジトリから過去分がごっそり
まつもと ゆきひろです
On Tue, 26 Dec 2000 14:58:07 +0900
まつもと ゆきひろです
At Tue, 26 Dec 2000 17:44:57 +0900,
On Tue, 26 Dec 2000 21:24:19 +0900
At Fri, 29 Dec 2000 18:56:03 +0900,
On Fri, 29 Dec 2000 19:07:12 +0900
At Fri, 29 Dec 2000 19:35:56 +0900,
On Fri, 29 Dec 2000 19:55:59 +0900
At Sat, 6 Jan 2001 20:33:58 +0900,
えぐち@エスアンドイー です。
[#11849] rb_io_flush — Kazuhiro Yoshida <moriq.kazuhiro@...>
もりきゅうです。
[#11852] local variable extent problem? — Tanaka Akira <akr@...17n.org>
どうも、Ruby のバグのような気がするものを見つけたのですが、もしかした
まつもと ゆきひろです
In article <977817486.100168.31162.nullmailer@ev.netlab.zetabits.com>,
まつもと ゆきひろです
In article <977819010.870991.31953.nullmailer@ev.netlab.zetabits.com>,
まつもと ゆきひろです
At Tue, 26 Dec 2000 17:50:11 +0900,
まつもと ゆきひろです
こんばんは。もうこんな時間だ。。
まつもと ゆきひろです
[#11885] New CVSweb — "Akinori MUSHA" <knu@...>
以下の URL に新しい CVSweb を置きました。新しいレポジトリを
[#11898] `www' module is available again — "Akinori MUSHA" <knu@...>
www レポジトリをマージしました。今のところ、 ruby と www の
[ruby-dev:11785] [Patch] tracer.rb following ruby/1.6 debug API
なひです。
> From: Yukihiro Matsumoto
> Sent: Friday, December 08, 2000 10:22 AM
> |> |1-a. いずれかのthreadがbpなどで停止すると、全threadが止まる。
> |> |1-b. いずれかのthreadがbpなどで停止すると、そのthreadのみが止まる。
> |> |2. thread stopすると、指定されたthreadが止まる。
> |> |3. thread resumeすると、指定されたthreadが再開する。
> |> |
> |> |とかですかね?ちょっと排他制御が難しくなりそう。。。
> |>
> |> 2,3はその通りです。1は1-bが望ましいと思ってます。
> |
> |A) 1-aが欲しいシチュエーションはどうしましょうか。
> |「何か起こった時」の状態を検査したい場合、
> |動きつづけられると困る場合もあると思います。
>
> ああ、そうか。たとえば1-aで、次の再開(nとかcとか)で全部が動
> きだすとかが可能であればその方が良いかもしれませんね。
の流れでdebug.rbをいじっていて、
ついでにtracer.rbも変更したくなったのでpatchです。
1.6のdebug APIに対応して、表示される情報量を増やしました(klass)。
従来c-call/c-returnの時はろくな情報が表示されてなかったのですが、
少しはわかりやすくなるかな?
「これでは情報量が多すぎる」という場合もあると思うので、
そのうちtrace levelみたいなのを導入したいです。誰か?
--- /usr/local/lib/ruby/1.6/tracer.rb Wed Oct 11 19:42:22 2000
+++ ./tracer.rb Mon Dec 18 22:35:57 2000
@@ -32,5 +32,8 @@ class Tracer
"return" => "<",
"class" => "C",
- "end" => "E"}
+ "end" => "E",
+ "c-call" => ">",
+ "c-return" => "<",
+ }
def initialize
@@ -60,6 +63,6 @@ class Tracer
end
else
- set_trace_func proc{|event, file, line, id, binding, klass|
- trace_func event, file, line, id, binding
+ set_trace_func proc{|event, file, line, id, binding, klass, *rest|
+ trace_func event, file, line, id, binding, klass
}
stdout.print "Trace on\n" if Tracer.verbose?
@@ -86,5 +89,4 @@ class Tracer
unless list = LINES__[file]
-# stdout.print file if $DEBUG
begin
f = open(file)
@@ -113,19 +115,19 @@ class Tracer
end
- def trace_func(event, file, line, id, binding)
+ def trace_func(event, file, line, id, binding, klass)
return if file == MY_FILE_NAME
- #stdout.printf "Th: %s\n", Thread.current.inspect
for p in @filters
- return unless p.call event, file, line, id, binding
+ return unless p.call event, file, line, id, binding, klass
end
Thread.critical = true
- stdout.printf("#%d:%s:%d:%s: %s",
- get_thread_no,
- file,
- line,
- EVENT_SYMBOL[event],
- get_line(file, line))
+ stdout.printf("#%d:%s:%d:%s:%s: %s",
+ get_thread_no,
+ file,
+ line,
+ klass || '',
+ EVENT_SYMBOL[event],
+ get_line(file, line))
Thread.critical = false
end