[#11904] to_i,to_s の素朴な疑問 — HQss_YasuiS/hq_ss@...

30 messages 1999/02/04
[#11905] Re: to_i,to_s の素朴な疑問 — Masaki Fukushima <fukusima@...> 1999/02/04

福嶋です。

[#11915] Re: to_i,to_s の素朴な疑問 — HQss_YasuiS/hq_ss@... 1999/02/05
[#11917] Re: to_i,to_s の素朴な疑問 — Masaki Fukushima <fukusima@...> 1999/02/05

福嶋です。

[#11931] Re: to_i,to_s の素朴な疑問 — HQss_YasuiS/hq_ss@... 1999/02/05
[#11943] Re: to_i,to_s の素朴な疑問 — "INOUE Katsuyuki" <inoue@...> 1999/02/05

井上%といいます。

[#11980] Re: to_i,to_s の素朴な疑問 — HQss_YasuiS/hq_ss@... 1999/02/08

[#12000] how to make class? — "Kikutani, Makoto" <kikutani@...>

なんだかデータ変換で難しい話が続いているので、初心者の

53 messages 1999/02/10
[#12001] how to make class? — gotoken@... (GOTO Kentaro) 1999/02/10

ごとけんです

[#12002] What's DelegateClass ? (Re: how to make class?) — "Kikutani, Makoto" <kikutani@...> 1999/02/10

自分で始めたスレッドながらいきなりサブジェクトを変える奴。

[#12003] What's DelegateClass ? (Re: how to make class?) — gotoken@... (GOTO Kentaro) 1999/02/10

ごとけんです

[#12012] Re: What's DelegateClass ? (Re: how to make class?) — matz@... (Yukihiro Matsumoto) 1999/02/11

まつもと ゆきひろです

[#12017] Re: What's DelegateClass ? — Minero Aoki <aamine@...> 1999/02/11

あおきです。

[#12090] !=~ — "Kikutani, Makoto" <kikutani@...>

わははそうか、今まで =~ の否定は !=~ だと思っててて

42 messages 1999/02/15
[#12091] Re: !=~ — Yasuhiro Fukuma <yasuf@...> 1999/02/15

福間@福岡 です。

[#12092] Re: !=~ — ttate@... 1999/02/15

立石です。

[#12097] Re: !=~ — matz@... (Yukihiro Matsumoto) 1999/02/16

まつもと ゆきひろです

[#12099] Re: !=~ — gotoken@... (GOTO Kentaro) 1999/02/16

ごとけんです

[#12100] Re: !=~ — Kikutani Makoto <kikutani@...> 1999/02/16

Tue, Feb 16, 1999 at 10:40:46AM +0900 において

[#12101] Re: !=~ — gotoken@... (GOTO Kentaro) 1999/02/16

ごとけんです

[#12102] Re: !=~ — ttate@... 1999/02/16

立石です。

[#12103] Re: !=~ — gotoken@... (GOTO Kentaro) 1999/02/16

ごとけんです

[#12108] Re: !=~ — EGUCHI Osamu <eguchi@...> 1999/02/16

えぐち@エスアンドイー です。

[#12112] Re: !=~ — gotoken@... (GOTO Kentaro) 1999/02/16

ごとけんです

[#12116] Re: !=~ — EGUCHI Osamu <eguchi@...> 1999/02/16

えぐち@エスアンドイー です。

[#12122] Re: !=~ — gotoken@... (GOTO Kentaro) 1999/02/17

ごとけんです

[#12138] Re: !=~ — matz@... (Yukihiro Matsumoto) 1999/02/17

まつもと ゆきひろです

[#12156] Re: !=~ — EGUCHI Osamu <eguchi@...> 1999/02/18

えぐち@エスアンドイー です。

[#12157] Re: !=~ — matz@... (Yukihiro Matsumoto) 1999/02/18

まつもと ゆきひろです

[#12168] Re: !=~ — EGUCHI Osamu <eguchi@...> 1999/02/18

えぐち@エスアンドイー です。

[#12171] Re: !=~ — matz@... (Yukihiro Matsumoto) 1999/02/19

まつもと ゆきひろです

[#12117] INET client — "Kikutani, Makoto" <kikutani@...>

あおきさんのINET clientへの質問コーナー

51 messages 1999/02/16
[#12120] Re: INET client — "Kikutani, Makoto" <kikutani@...> 1999/02/16

Wed, Feb 17, 1999 at 02:24:11AM +0900 において

[#12183] ruby-mode + font-lock-mode — SONODA Yoshihide (園田 吉英) <ysonoda@...>

はじめまして、園田と申します。

21 messages 1999/02/19
[#12185] Re: ruby-mode + font-lock-mode — Shugo Maeda <shugo@...> 1999/02/19

前田です。

[#12188] Re: Meeting2000 リリースします — 松尾尚典 <matsuo_hisanori@...21.odn.ne.jp>

松尾です。

31 messages 1999/02/19
[#12245] Re: Meeting2000 リリースします — "NAKAMURA, Hiroshi" <nakahiro@...> 1999/02/23

ruby-listの皆様,

[#12249] Re: Meeting2000 リリースします — matz@... (Yukihiro Matsumoto) 1999/02/23

まつもと ゆきひろです

[#12269] Re: Meeting2000 リリースします — "NAKAMURA, Hiroshi" <nakahiro@...> 1999/02/23

ruby-listのみなさん,

[#12272] Re: Meeting2000 リリースします — Takahiro Maebashi <maebashi@...> 1999/02/23

前橋です。

[#12276] HTTP/1.1 client ( was Re: Meeting2000 リリースします ) — "NAKAMURA, Hiroshi" <nakahiro@...> 1999/02/23

ruby-listのみなさん,

[#12521] http-access (HTTP/1.1 client) — Takahiro Maebashi <maebashi@...> 1999/03/03

前橋です。

[#12217] It wants to install mon_ruby — moochan <moochan@...>

moochanです。

27 messages 1999/02/22
[#12222] Re: It wants to install mon_ruby — Shugo Maeda <shugo@...> 1999/02/22

前田です。

[#12230] Re: It wants to install mon_ruby — moochan <moochan@...> 1999/02/23

moochanです.

[#12248] tempfile — Kikutani Makoto <kikutani@...>

tempファイルをよく作るのですが、

19 messages 1999/02/23

[#12301] Meeting2000-0_92 — Toshiki Komai <komai@...4u.or.jp>

29 messages 1999/02/23
[#12303] Re: Meeting2000-0_92 — hisanori@... 1999/02/24

松尾です。おはようございます。

[#12305] Re: Meeting2000-0_92 — Shin-ichiro Hara <sinara@...> 1999/02/24

原です。

[#12306] Re: Meeting2000-0_92 — hisanori@... 1999/02/24

From: Shin-ichiro Hara <sinara@blade.nagaokaut.ac.jp>

[#12307] Re: Meeting2000-0_92 — Shin-ichiro Hara <sinara@...> 1999/02/24

原です。

[#12310] Re: Meeting2000-0_92 — hisanori@... 1999/02/24

From: Shin-ichiro Hara <sinara@blade.nagaokaut.ac.jp>

[#12322] Re: Meeting2000-0_92 — "NAKAMURA, Hiroshi" <nakahiro@...> 1999/02/24

ruby-listのみなさま, && なひ,と言います.

[#12309] [REQ] rlex.rb — keiju@... (Keiju ISHITSUKA)

けいじゅ@日本ラショナルソフトウェアです.

44 messages 1999/02/24
[#12350] Re: [REQ] rlex.rb — kjana@... (YANAGAWA Kazuhisa) 1999/02/24

In message <199902231347.WAA00565.keiju@bc.mbn.or.jp>

[#12465] Re: [REQ] rlex.rb — kjana@... (YANAGAWA Kazuhisa) 1999/02/26

In message <199902241316.WAA03663@mail1.os.xaxon.ne.jp>

[#12466] Re: [REQ] rlex.rb — keiju@... (石塚圭樹 ) 1999/02/26

けいじゅ@日本ラショナルソフトウェアです.

[#12470] Re: [REQ] rlex.rb — kjana@... (YANAGAWA Kazuhisa) 1999/02/26

In message <199902261443.XAA10667.keiju@cupmail0.rational.com>

[#12497] Re: [REQ] rlex.rb — keiju@... (石塚圭樹 ) 1999/03/01

けいじゅ@日本ラショナルソフトウェアです.

[#12501] Re: [REQ] rlex.rb — kjana@... (YANAGAWA Kazuhisa) 1999/03/01

In message <199903010918.SAA16824.keiju@bc.mbn.or.jp>

[#12503] Re: [REQ] rlex.rb — keiju@... (石塚圭樹 ) 1999/03/01

けいじゅ@日本ラショナルソフトウェアです.

[#12511] Re: [REQ] rlex.rb — kjana@... (YANAGAWA Kazuhisa) 1999/03/02

In message <199903011352.WAA17487.keiju@bc.mbn.or.jp>

[#12526] Re: [REQ] rlex.rb — keiju@... (石塚圭樹 ) 1999/03/04

けいじゅ@日本ラショナルソフトウェアです.

[#12540] Re: [REQ] rlex.rb — kjana@... (YANAGAWA Kazuhisa) 1999/03/04

In message <199903040444.NAA21095.keiju@bc.mbn.or.jp>

[#12664] Re: [REQ] rlex.rb — keiju@... (石塚圭樹 ) 1999/03/09

けいじゅ@日本ラショナルソフトウェアです.

[#12691] Re: [REQ] rlex.rb — kjana@... (YANAGAWA Kazuhisa) 1999/03/09

In message <199903090457.NAA00259.keiju@bc.mbn.or.jp>

[#12719] Re: [REQ] rlex.rb — keiju@... (石塚圭樹 ) 1999/03/10

けいじゅ@日本ラショナルソフトウェアです.

[#12729] Re: [REQ] rlex.rb — kjana@... (YANAGAWA Kazuhisa) 1999/03/10

In message <199903091600.BAA02510.keiju@bc.mbn.or.jp>

[#12315] RE: (閑話) 「 XML 開発者の日」にて Ruby 紹介ありですね。 — 助田 雅紀 <masaki.suketa@...>

助田です.

13 messages 1999/02/24

[ruby-list:12477] Re: Meeting2000-0_92b1

From: "NAKAMURA, Hiroshi" <nakahiro@...>
Date: 1999-02-27 10:07:49 UTC
List: ruby-list #12477
なひです.

> From: Yukihiro Matsumoto
> Sent: Friday, February 26, 1999 3:16 PM

なひ:
> |> SIGPIPEの方は,ほっとくと@application.commitを通らないので,
> |> 溜めたデータがリセットされちゃいますよね...

松尾さん:
> |そうなんでしたっけ? SIGKILL(?)以外なら落ちるときでも 
> |httpserver.initialze の中の、ensureは通ると思ってました。スレッドが異
> |なると駄目なのかなぁ。本当はどうなんでしょう。教えてえらい人。

まつもと ゆきひろさん:
> ensureを実行するように作っているつもりだったんですが,通りま

ruby 1.2.3(99/02/16) [sparc-solaris2.5.1]を使っています.

簡単なサーバを作って試してみたんですが,
やはり親ブロックのensureに制御が移る前に
プロセスが死んでいるような気がします.

ENDブロックも書いてみましたが,やはり
trap( 'SIGPIPE', 'EXIT' )
しておかない限り実行されないようです(あたりまえか...

実際Meeting2000_0_92b1でも,
「新規会合登録」で登録を行なった後,
ブラウザのリロードボタンを押しっぱなし攻撃等で
サーバを落としてしまうと,
直近60秒の変更はDBに反映されません.

# なひがまたなにか勘違いしていないといいんですが...

試したのは以下のサーバです.
これを「ruby server.rb &」で起動しておいて,
コマンドラインからSIGPIPEを送る(Solaris 2.*ならkill -13 プロセス番号)と,
"die..."と表示されずに「Broken pipe   ruby server.rb」で戻ってきます.
Meeting2000だと,この
      p "die..."
に該当する部分が,
@application.commitに相当しますよね? > 松尾さん

# 「ここはこう書くのがRuby流」というコメントを歓迎します.(^_^;

--- 8< --- 8< ---: 以下はserver.rb

require 'SampleSvr.rb'
app = SampleSvr.new( 'localhost', 60080 )

--- 8< --- 8< ---: 以下はSampleSvr.rb

require 'thread'
require 'socket'

class SampleSvr

 private
  DefaultSvrHostName = 'localhost'
  DefaultSvrPortNo = 60001
  ReadBlockSize = 512
  WriteMessage =<<'EOM'
HTTP/1.1 200 OK
Content-type: text/plain

hello world!
EOM

  @svr
  @hostName
  @portNo

 private
  def initialize( hostName = DefaultSvrHostName, portNo = DefaultSvrPortNo )
    begin
      @hostName = hostName
      @portNo = portNo
      p "#{@hostName}##{@portNo}"
      run
    resuce
      p "rescued@initialize"
    ensure
      p "die..."
    end
  end

  def run
    @svr = TCPserver.open( @hostName, @portNo )
    while true
      begin
      	socket = @svr.accept
      rescue Errno::EPROTO
	p "Accept failed."
	next
      end
      #p "accepted"
      Thread.new { acceptHandler( socket ) }
    end
  end

  def acceptHandler( mySocket )
    begin
      mySocket.sysread( ReadBlockSize )	# dummy read
      mySocket.syswrite( WriteMessage )
    rescue Errno::ECONNRESET
      p "Connection reset by peer"
    rescue
      p $!
    ensure
      mySocket.close
    end
  end
end

In This Thread

Prev Next