タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

qiitaとrubyとtempfileに関するnabinnoのブックマーク (3)

  • Rack::TempfileReaper でファイルアップロード時にできたテンポラリファイルを即削除 - Qiita

    Rack は、ファイルアップロードなど、multipart なコンテントタイプのリクエストを処理するときに、送られてきたデータをテンポラリファイルとして保存する。 https://github.com/rack/rack/blob/1.6.4/lib/rack/multipart/parser.rb#L21-L22 https://github.com/rack/rack/blob/1.6.4/lib/rack/multipart/parser.rb#L135 rubyTempfile クラスを使ってテンポラリファイルを作っている。Tempfile は #close!(または #close(true))したらテンポラリファイルも削除するが、そうでないと GC されるかアプリケーションが終了するまで残り続けてしまう。 https://github.com/ruby/ruby/blob/

    Rack::TempfileReaper でファイルアップロード時にできたテンポラリファイルを即削除 - Qiita
  • RubyでTempfileを使う際の注意 - Qiita

    といったコードがありました。 このコード、だいたいの場合問題なく動くのですが、たまに作成したはずの一時ファイルがないと怒られることがありました。 実は Tempfile オブジェクトは自身への参照がなくなり、ガベージコレクションされた際に一時ファイルを削除する仕組みがあります。実はさきほどのコードでは Tempfile のオブジェクトへの参照が Tempfile#open のブロックを抜けるタイミングでなくなってしまっていたのです。 変数 tempfile があるじゃないか、と思うかもしれませんが実はこれ Tempfile のオブジェクトではないのです。 ドキュメントを見ると、 Tempfile オブジェクトはFileクラスへのDelegatorとして定義されており、Fileクラスのオブジェクトと同じように使うことができます。 とありますが、 File クラスで定義されているメソッドを使う

    RubyでTempfileを使う際の注意 - Qiita
  • tempfile再考 - Qiita

    何気なく使ってる一時ファイル(tempfile)ですが、このような事があったので少し実装を調べてみました。 テストが高速化されたことで、tmp fileをunixtimeで自前生成していたtest caseが軒並みfailするようになったので、テスト用に生成するファイルはtmpfile(3)使いましょうという知見 — ⁰⁰⁰⁰null (@yuroyoro) September 11, 2014 一時ファイル(tempfile)に期待される挙動 ユニークで推測しにくいファイル名で生成される プロセス終了時に削除される 他のプロセスからは見えない 実際に一時ファイルを作成する際は、これらの要件のうちのいくつかを期待していると思います。 アプリケーションからこのような特性を持つ一時ファイルを生成するためには、通常はなんらかのライブラリを利用するはずです。 というか、普通にunixtimeを元に

    tempfile再考 - Qiita
  • 1