[#45341] 非同期割り込みに対する対処案(日本語版) — SASADA Koichi <ko1@...>

 ささだです.

28 messages 2012/03/11
[#45816] Re: 非同期割り込みに対する対処案(日本語版) — SASADA Koichi <ko1@...> 2012/06/25

 ささだです.

[#45817] Re: 非同期割り込みに対する対処案(日本語版) — Tanaka Akira <akr@...> 2012/06/25

2012年6月25日 18:26 SASADA Koichi <[email protected]>:

[#45819] Re: 非同期割り込みに対する対処案(日本語版) — SASADA Koichi <ko1@...> 2012/06/25

 ささだです.

[#45820] Re: 非同期割り込みに対する対処案(日本語版) — Tanaka Akira <akr@...> 2012/06/25

2012年6月25日 19:39 SASADA Koichi <[email protected]>:

[#45827] Re: 非同期割り込みに対する対処案(日本語版) — SASADA Koichi <ko1@...> 2012/06/25

(2012/06/25 20:32), Tanaka Akira wrote:

[#45841] Re: 非同期割り込みに対する対処案(日本語版) — Tanaka Akira <akr@...> 2012/06/25

2012年6月26日 3:40 SASADA Koichi <[email protected]>:

[#45844] Re: 非同期割り込みに対する対処案(日本語版) — SASADA Koichi <ko1@...> 2012/06/25

(2012/06/26 5:07), Tanaka Akira wrote:

[#45372] Marshal.dumpにおけるインスタンス変数の取り扱いについて — keiju@... (Keiju ISHITSUKA)

けいじゅ@いしつかです.

14 messages 2012/03/16
[#45376] Re: Marshal.dumpにおけるインスタンス変数の取り扱いについて — Yukihiro Matsumoto <matz@...> 2012/03/17

まつもと ゆきひろです

[#45377] Re: Marshal.dumpにおけるインスタンス変数の取り扱いについて — keiju@... (石塚圭樹) 2012/03/17

けいじゅ@いしつかです.

[#45381] Re: Marshal.dumpにおけるインスタンス変数の取り扱いについて — Yukihiro Matsumoto <matz@...> 2012/03/17

まつもと ゆきひろです

[#45399] Re: Marshal.dumpにおけるインスタンス変数の取り扱いについて — keiju@... (石塚圭樹) 2012/03/18

けいじゅ@いしつかです.

[#45412] [ruby-trunk - Feature #6177][Open] array.cのrb_ary_equal()の高速化 — "Glass_saga (Masaki Matsushita)" <glass.saga@...>

13 messages 2012/03/20

[#45471] [ruby-trunk - Bug #6230][Open] [WEBrick] WEBrick::HTTPResponse#body の IO オブジェクトの読み込みに read メソッドを使っているため必要以上にブロックされる — "nobuoka (yu nobuoka)" <nobuoka@...>

7 messages 2012/03/30

[ruby-dev:45477] [ruby-trunk - Feature #4592] Tempfileを直接保存したい

From: "mame (Yusuke Endoh)" <mame@...>
Date: 2012-03-31 11:50:08 UTC
List: ruby-dev #45477
Issue #4592 has been updated by mame (Yusuke Endoh).


どういう意味でこのチケットを自分にアサインしたか忘れてしまったのですが。


shyouhei (Shyouhei Urabe) wrote:
> * closeと同時というのを諦め、closeのちょっと後でよければ、普通にmvできるのではないでしょうか。
>    irb(main):001:0> f = Tempfile.new('')
>    => #<File:/tmp/20110421-7098-1bvjwc0>
>    irb(main):002:0> f.puts("foobar")
>    => nil
>    irb(main):003:0> f.close; File.rename(f, "tmp.txt")
>    => 0
>    irb(main):008:0> File.read("tmp.txt")
>    => "foobar\n"

これは、GC タイミングによっては失敗しますよね。(f.close の直後で GC)
また、rename 後に元のファイル名と同じファイルを作ったら、この tempfile が
GC される際に消されてしまう危険があると思います。
よって、workaround としては推奨しかねるものだと思います。


> * /tmpとRubyのカレントディレクトリが別パーティションだったら、どのみちコピーは発生するのではないでしょうか。

気にするなら、Tempfile 生成ディレクトリを自分で指定すればいいと思います。


> * Tempfileを保存したいというのはTempfileの意味からして本末転倒なのではないでしょうか。

これは個人の感覚の問題だと思いますが、「temporary だけど、うまく行けば
永続化するつもり」というのは私はいいかなあと思いました。



akr (Akira Tanaka) wrote:
> remove_finalizer とか、save とかよりももうちょっと長い名前がいいんじゃないかなぁ、と思います。

Tempfile#persist とか、秋葉原の開発者会議で出た案でしたっけ。

-- 
Yusuke Endoh <[email protected]>
----------------------------------------
Feature #4592: Tempfileを直接保存したい
https://bugs.ruby-lang.org/issues/4592#change-25527

Author: xibbar (Takeyuki Fujioka)
Status: Assigned
Priority: Normal
Assignee: mame (Yusuke Endoh)
Category: lib
Target version: 


=begin
Tempfileは一時ファイルなので、プロセスが消えたり、#closeすると、
ファイルが消えてしまいます。
Tempfileのデータを保存するために
一旦読みだして、書き込み用に別ファイルを開いて、
そこに書きこまなければいけません。
これが小さいファイルだったらいいのですが、
大きいファイルになると、
Tempfile#save みたいなメソッドを用意して、
closeと同時に保存ができると、
読みだして書きこむという無駄をなくすことができます。
10MB程度だったらいいのですが、500MとかのTempfileだと
かなり有効なメソッドだと思います。

#save とか #save! とか、何がいいかは議論の余地があると思います。
=end



-- 
http://bugs.ruby-lang.org/

In This Thread