[#41778] [Bug #3515] FreeBSD wrongly raises ECONNRESET on close(2) — Yui NARUSE <redmine@...>

Bug #3515: FreeBSD wrongly raises ECONNRESET on close(2)

12 messages 2010/07/02

[ruby-dev:41903] Re: thread.bind(sym, val) { ... }

From: Tanaka Akira <akr@...>
Date: 2010-07-30 07:36:17 UTC
List: ruby-dev #41903
2010年7月30日7:32 Yukihiro Matsumoto <matz@ruby-lang.org>:

> 多いんですか。個人的にはスレッド変数はスレッドスコープのグロー
> バル変数としてだけ使い、スコープのあるような使い方の経験はな
> いんですが。

うぅむ、調べ直してみると、たしかにそんなに多くないのかもしれません。

探してみると以下くらいが見つかります。

* lib/webrick/server.rb の Thread.current[:WEBrickSocket]
* lib/drb/drb.rb の Thread.current[:drb_untaint]
* ext/pathname/lib/pathname.rb の Thread.current[:pathname_sub_matchdata]

pp (や inspect) では、スレッド変数それ自体は一回設定したら変えませんね。
変更・回復は設定したハッシュの中身に対して行うので、それは Thread#bind で
対応するものではなさそうです。

提案前に調べ直してみるべきだったか。
-- 
[田中 哲][たなか あきら][Tanaka Akira]

In This Thread