[Mew-dist 16188] Re: mew-folder-new-message

Kazu Yamamoto ( 山本和彦 ) kazu at example.com
2001年 2月 6日 (火) 16:55:17 JST


From: Atsushi Onoe <onoe at example.com>
Subject: [Mew-dist 16186] Re: mew-folder-new-message

> あんまり問題が理解できてないけど、最大値がわかれば良いとすれば
> .mew-cache の中にヒントが書いてあったりしないのかな。

今度は .mew-cache をシークする時間が問題になります...
#さらに、.mew-cache の有効性もチェックしないといけないし。

> タイムスタンプに頼りすぎるのはどうかな。要は(n)が存在して(n+1)が存在
> しなければ良いのだから、そのくらいは毎回確認しても良いのでは。

メールを 15694 通格納するフォルダに対して走らすと、0.8 秒もかかります。

-----
Function                 Calls  Total time (sec)  Avg time per call
======================  ======  ================  =================
mew-folder-new-message     100         81.612942           0.816129
-----

嫌でしょう? "x" するたび(しかも refile 先のフォルダの数をかける)、あ
るいは、メールを送るたびに、これだけ時間を消費するんですよ。
 
> 念のため。線形探索って readdir(2) のことだよね?
> 万一 readdir(2) が使えなくて open/stat するしかないなら 2分探索の逆
> (なんて言うんだ? 倍々する)して最後を2分探索で追うしかないかも。

??? 

Elisp レベルで、
	(directory-files dir nil "^[1-9][0-9]*$" 'no-sort)
して、これが返したリストを線形探索するという意味です。

C レベルの関数のことなど、当然知りません。:-)

--かず



Mew-dist メーリングリストの案内