[#25756] Re: 原先生の本 — Dave Thomas <Dave@...>
keiju@ishitsuka.com (石塚圭樹)) writes:
[#25782] Re: 原先生の本 — hmorita <hmorita@...>
石塚さん、ruby-listのみなさん、こんにちは。オーム社の森田と申します。
[#25791] win32ole 0.1.4 (型が一致しません) — Koji Arai <JCA02266@...>
新井です。
[#25807] Pograming Ruby — Yoshimasa Kusano <dingo@...>
[#25849] メソッドの引き数の数を知りたいのですが� . — SHIROYAMA Takayuki <psi@...>
[#25856] new host at ruby-lang.org (or rubyist.org) — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
[#25874] 子プロセスから標準出力と終了ステータスを得たい — yharuo@...7.dddd.ne.jp
はるおと申します。
まつもと ゆきひろです
わたなべです.
はるおです。
newです.
はるおです。
なかだです。
はるおです。
newです.
はるおです。
newです.
はるおです。
わたなべです.
まつもと ゆきひろです
石橋秀仁です。
標準の細かなことは知りませんが、
はるおです。
前田です。
はるおです。
前田です。
はるおです。
まつもと ゆきひろです
はるおです。
まつもと ゆきひろです
はるおです。
まつもと ゆきひろです
はるおです。
まつもと ゆきひろです
はるおです。
In message <20001116164843.7086.YHARUO@mail7.dddd.ne.jp>
わたなべです.
まつもと ゆきひろです
わたなべです.
わたなべです.
わたなべです.
はるおです。
話題を全部追えているわけではないので、外してる可能性もありますが、
はるおです。
わたなべです.
はるおです。
In message <20001114144723.8685.YHARUO@mail7.dddd.ne.jp>
[#25881] 開発版と安定版 — 小野工場設計部 <ind.onosetu1@...>
おがたといいます
[#25882] net/http takes wrong value for Host with proxy — YANAGAWA Kazuhisa <kjana@...>
Net::HTTP は Net::HTTP#connect で Net::HTTPCommand.new を実行していて,
あおきです。
[#25895] Reference Manual — Koji Arai <JCA02266@...>
新井です。
[#25897] validatecommand etc. of TkEntry — Masahiro SATO <m@...>
立石です.
[#25955] Perl/Ruby オフ会最終案内 — Kenji Watari <kenji@...>
watariです。
[#25959] [Q] ブロックを評価した回数 — eda@...
えだです。
[#25987] Win32 版 select システム時刻をもどすと — Hiroyuki Makito <makimaki@...>
牧戸と申します。
[#25999] kconv? — Katsuya Tanaka <tanaka@...>
[#26006] def foo(arg=@member) — "岡本" <okamoto@...>
岡本といいます。
[#26012] reference manual to WiKi — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
新井です。
なひです。
From: m_seki@mva.biglobe.ne.jp
新井です。
新井です。
新井です。
From: Koji Arai <JCA02266@nifty.ne.jp>
[#26038] Ruby の拡張モジュールにおける、終了関数 — Kengo Nakajima <ringo@...>
こんにちは。
[#26069] Ruby デスクトップリファレンス — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
渡辺哲也です。
オライリーのwatariです。
[#26082] Perl/Ruby Conference 会場でサイン会? — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
オライリーの渡里です。
[#26083] class Time manual error? — Hideto ISHIBASHI <hideto-i@...4u.or.jp>
石橋秀仁です。
[#26096] about tmail — Shugo Maeda <shugo@...>
前田です。
[#26106] site_ruby in Ruby-1.6.1 and cvsweb — TAKAHASHI Masayoshi <maki@...>
高橋征義です。
[#26127] media watch 2000.11.18 — Noritsugu Nakamura <nnakamur@...>
[#26156] fork problem? — Tanaka Akira <akr@...17n.org>
ふと気がついたのですが、fork した子プロセス内で例外が発生すると、外側
まつもと ゆきひろです
In article <E13zgAK-0005kt-00@ev.netlab.zetabits.co.jp>,
まつもと ゆきひろです
なかだです。
In article <200011252247.HAA09258@sharui.nakada.kanuma.tochigi.jp>,
なかだです。
まつもと ゆきひろです
なかだです。
なかださん wrote:
In message <200011270410.NAA09803@cafe.muraoka.info.waseda.ac.jp>
In article <200011270426.NAA08013@edge.sky.yamashina.kyoto.jp>,
まつもと ゆきひろです
まつもと ゆきひろです
まつもと ゆきひろです
まつもと ゆきひろです
木山です.
余談ですが、
In message <3A2926E4316.F02D.BXQ04723@nifty.ne.jp>
首藤です。
まつもと ゆきひろです
なひです。
渡辺哲也です。
首藤です。
In message <3A287422384.A2B9.BXQ04723@nifty.ne.jp>
首藤です。
In message <3A28D7CEC8.C120.BXQ04723@nifty.ne.jp>
まつもと ゆきひろです
[#26158] [media-watch] Linux Japan Jan. 2001 — nosuzuki@... (Norio Suzuki)
こんばんは。鈴木教郎です。雑誌で見つけた "Ruby" です。
[#26171] エスケープされていない "," で文字列分割 ? — OZAWA -Crouton- Sakuro <crouton@...>
さくです。
[#26202] Time Zone — ARIMA Yasuhiro <fit0298@...>
有馬です。
有馬@京都に行けませんでしたです。
[#26219] jlength — mzh@...
はじめまして西尾と言います。
[#26231] initialize should call super — Toyofuku <toyofuku@...>
豊福です。
[ruby-list:26168] Re: fork problem?
In article <E13zipu-00077q-00@ev.netlab.zetabits.co.jp>,
matz@zetabits.com (Yukihiro Matsumoto) writes:
> 状況はわかりました。もし可能であれば、作りかけのRuby版とエラー
> を発生させる起動法に関する情報があるとこちらでいろいろ実験で
> きるので助かります。
わかりました。いろいろデバッグ用の出力を行なうようになっていますが、そ
のままつけておきます。
まず、サーバを動かします。
(ちなみに /cvs/root ってのは動作にはまったく関係ありません。)
% ./cvsconnect /cvs/root sh
"#<Thread:0x8103024> unlink_maybe: /tmp/cvsconnect-11933"
Exception `Errno::ENOENT' at ./cvsconnect:46
$
次に、他の端末から、クライアントを動かします。
(hose は netpipes に含まれています。(stream な)unix domain socket を通
して対話できるツールならなんでも構いません... 寡聞にして netpipes 以外
のものは知りませんが。)
% hose localhost /tmp/cvsconnect-* --slave --unix
クライアント一つなら問題なく動きます。cat -nu がサーバ側で動くようになっ
ているので、
% hose localhost /tmp/cvsconnect-* --slave --unix
a
1 a
b
2 b
というように受け答えするはずです。
(接続を終了してから再度接続しても、行番号はリセットされません。これは
意図された動作です。というか、そのようにサーバとの接続を保持するのがこ
のプログラムの役目なわけです。)
ここで、さらにもうひとつ他の端末で並行してクライアントを起動すると、問
題が発生します。意図された動作は cat -nu をもうひとつ起動して、そちら
と対話する、というものですが、接続は可能なものの反応がないという状況に
なります。そして、新しく起動したクライアントだけでなく、もともと接続し
ていたクライアントでも反応がなくなってしまいます。
さて、何が起きているのやら...
ちなみに popen で実装するとだいたいうまく動きます。
(使用する file descriptor が 64 を越えるまでは。たぶん。)
> forkしてからcloseすれば良いのかしら?
むろんそうしています。
> dupしているのはstdioのコードをソケットに対しても適用可能にす
> るためです。stdioがseekなしで読み書きできればこんなことはし
> なくても済むのですが。
うぅむ。rw な FILE は read/write の切り替わり時に seek する、というの
が問題なわけでしょうか? そういう問題があることは不覚にも気がついていま
せんでしたが、ひとつの fd に対して 2回 fdopen するするわけにはいかない
んでしょうか?
(片方でしか close できないから memory leak してしまうか?)
> # その度に浮上する stdio を捨てる案。でも、拡張ライブラリや、
> # その先のライブラリが使っている stdio との不整合が...。
ぜひぜひ。
> IO#fcntlやIO#ioctlがfとf2の両方にfcntl(2), ioctl(2)を呼べば
> 済む問題だといいんですが、どうなんでしょう?
それでも済みます。たぶん。
> |fcntl(など)を f2 に発行できるようにするか、
> |fork した当の thread 以外の thread をすべて有無を言わさず殺すような fork
> |(Thread.fork_and_kill_other_threads とか?)があるといいんじゃないかなぁ、
> |と思っています。
>
> forkとthreadを混ぜるのはかなり問題の元です。
過去のメールを search してそのような雰囲気を感じとってはいたのですが、
thread が有効だったので、つい。
> いっそ、fork_and_kill_other_threadsをforkの標準仕様にしちゃ
> いましょうか。
賛成です。
が、(ruby に限らず)余計なお節介に悩まされることが多い経験上、本物の
fork も他の名前(Process.fork とか?)で残しておくといいのではないかとい
う気もかすかにしないでもありません。具体的にどの場合に困る、というのは
今は思いつきませんが...
# continuation って thread なんだっけ?
--
[田中 哲][たなか あきら][Tanaka Akira]
「くっだらないコト聞いちゃったねー$(C⊇ ごっめーん$(C⊇」
(魔法使い養成専門 マジックスター学院 2, 南澤ミヅキ)