[#29170] Call for Papers Linux Conference 2001 — akira yamada / やまだあきら <akira@...>

18 messages 2001/04/10
[#30213] Re: Call for Papers Linux Conference 2001 — akira yamada / やまだあきら <akira@...> 2001/06/13

[#29190] Time Stamp Copy of File.copy — "たけ(tk)" <ggb03124@...>

 ftools.rb の move では utime を行っていて日付が同じになりますが、copy

42 messages 2001/04/11
[#29193] Re: Time Stamp Copy of File.copy — matz@... (Yukihiro Matsumoto) 2001/04/11

まつもと ゆきひろです

[#29201] Re: Time Stamp Copy of File.copy — " たけ (tk)" <ggb03124@...> 2001/04/11

たけ(tk)です。

[#29203] Re: Time Stamp Copy of File.copy — WATANABE Hirofumi <eban@...> 2001/04/11

わたなべです.

[#29212] Re: Time Stamp Copy of File.copy — Minero Aoki <aamine@...> 2001/04/12

あおきです。

[#29215] Re: Time Stamp Copy of File.copy — " たけ (tk)" <ggb03124@...> 2001/04/12

たけ(tk)です。

[#29220] Re: Time Stamp Copy of File.copy — Minero Aoki <aamine@...> 2001/04/12

あおきです。

[#29234] Re: Time Stamp Copy of File.copy — " たけ (tk)" <ggb03124@...> 2001/04/13

たけ(tk)です。

[#29236] Re: Time Stamp Copy of File.copy — matz@... (Yukihiro Matsumoto) 2001/04/13

まつもと ゆきひろです

[#29238] Array#include! — " たけ (tk)" <ggb03124@...> 2001/04/13

たけ(tk)です。

[#29244] Re: Array#include! — matz@... (Yukihiro Matsumoto) 2001/04/13

まつもと ゆきひろです

[#29348] Open3 — NISHIO Mizuho <mzh@...>

どうも西尾です。

16 messages 2001/04/20

[#29397] rnet.rb 〜高レベルネットライブラリ〜 — rubikitch <rubikitch@...>

るびきちです。

11 messages 2001/04/24

[ruby-list:29198] Ruby プロセスが肥大化していく

From: Sakae Kobayashi <sakae@...>
Date: 2001-04-11 12:34:20 UTC
List: ruby-list #29198
  困った時に出てくる 小林榮です。

UDPでコントロールされる、ある測定器のスクリプトをぶん回していると
rubyプロセスがだんだん肥大化し、ついにはswapエリアも喰い潰して
落ちてしまいます。

ruby-1.6.3 と 土台になるOS (FreeBSD 3.5.1 or Plamo 2.1 or Solaris 2.6)を
いろいろ変えてみましたが同様でした。
超時間Rubyを動かしたままでも大丈夫だよと言うような、耐久レースの経験を
持っておられる方はおられませんか?
あるいは、ノウハウでも結構です。

ちなみに、32Mのメモリー、64Mのswapエリアと言うFreeBSDで、3日間は
動いておりました。(1回の測定に0.5秒、70バイトぐらいの出力があります)

-- ruby-forever.rb ----------------------------
#!/usr/local/bin/ruby
# Eval network stabilty

require 'socket'
require 'timeout'

MAXLINE = 256
HOST = '192.168.1.3';   PORT = 2323
id_begin = 'A000';      id_end   = 'Z999'

def run(s,id)
  rdata=''
  timeout(2) {
	  s.send(id + ' run', 0, HOST, PORT)
	  rdata = s.recv(MAXLINE, 0)
  }
  rdata
end

#### main ############
s = UDPSocket.open()
id = id_begin.dup
cnt = err = 0
begin
	loop do
                cnt += 1
		val = run(s,id)
		puts Time.now().to_s + " " + val
		if id == id_end
			id = id_begin
		else
			id.succ!
		end
	end
rescue TimeoutError
	err += 1
	puts "TIMEOUT " + Time.now().to_s + " " + err.to_s + "/" + cnt.to_s
	retry
end

--
E-mail:  sakae@ps.ksky.ne.jp
URL:     http://www.ksky.ne.jp/~sakae/



In This Thread

Prev Next