タグ

ブックマーク / suu-g.hateblo.jp (3)

  • Ruby と exec と fd と - suu-g's diary

    ruby で exec するときにソケットや fd のリークを起こさないために。主に自分用の調査結果のメモ。 結論 ruby 1.9.1 以上で exec するときは、何はなくとも :close_others をつける ruby 2.0.0 以降ではこれを設定しなくても fd リークはしない ruby 1.9.0 以前は人力で必死に頑張る 基的な話 ruby の exec は基的には POSIX execve のラッパ。execve 前後では多くのものが保持されないが、ファイルディスクリプタは基的には残る。 デフォルトでは、ファイルディスクリプタは execve() を行った後でもオープンされたままである。 close-on-exec の印が付いているファイルディスクリプタはクローズされる。 http://linuxjm.sourceforge.jp/html/LDP_man-pag

    Ruby と exec と fd と - suu-g's diary
    UDONCHAN
    UDONCHAN 2013/05/22
  • BundlerでFizzBuzz - suu-g's diary

    今年もFizzBuzzの季節がやってまいりました。 FizzBuzzを書くことのできない言語を使えると口にすることはとても恥ずかしいことらしいので、きっとFizzBuzzを書くことのできないライブラリを使ってることも恥ずかしいことなのだろうと思います。 私も、ほとんどのライブラリはFizzBuzzしたことがありませんでした。このままではソーシャル転職をすることができません!将来のキャリアプランが台無しです。 そういえば最近、Ruby on Railsの世界ではBundlerというツールが流行っているらしいので、これを使ってFizzBuzzすることにしてみました。 Gemfileを用意する $ cat > Gemfile source 'https://rubygems.org' gem 'rails' ^DまずはGemfileを準備します。railsを入れるだけで色々入るので、ここではra

    BundlerでFizzBuzz - suu-g's diary
    UDONCHAN
    UDONCHAN 2012/08/10
    すげー
  • fizzbuzz - suu-g's diary

    条件分岐のやり方を忘れたネットワーク園児がなんかfizzbuzz書いてみました。ifと剰余演算子を使わない例。(http://bugrammer.g.hatena.ne.jp/nisemono_san/20111008 を見た) #!ruby class FizzBuzzer @@max = 1000 def self.define_my_methods num, word num.step(@@max, num) {|n| define_method "to_#{n}" do word end } end def method_missing method, *args, &block method.to_s =~ /^to_(\d+)$/ return $1 if $1 super end define_my_methods 3, :fizz define_my_methods 5,

    fizzbuzz - suu-g's diary
    UDONCHAN
    UDONCHAN 2011/10/09
  • 1