Victor Wagner wrote:
> On 2010.02.05 at 17:54:25 +0200, Serhiy Storchaka wrote:
>> Victor Wagner wrote:
>> > On 2010.02.05 at 18:18:57 +0300, Alexey Pechnikov wrote:
>> >> Проверка по mtime имхо совершенно ненадежна, предпочитаю по хэшу.
>> > 
>> > Зато - быстра. И то недостаточно  Вот FBReader при старте делает mtime
>> > всем файлам, которые уже видел, так если его на миррор lib.rus.ec
>> > напустить, будет несколько минут  взлетать (в смысле при повторном
>> > старте, когда индекс библиотеки уже построен).
>> 
>> А при повторном запуске (пока дисковые кеши свежи)?
> 
> Не проверял. Но для случая ежесуточно запускающегося дискового
> индексатотора это все равно неактуально.

Торможение может быть или из-за чтения каталогов (а в таких библиотеках
каждый текст лежит в своём отдельном каталоге), или из-за вызовов stat. С
первым можно справиться, перенеся все файлы в один каталог (это частично
устранит и вторую причину). Для второго нужно смотреть, не вызывается ли
stat для одного файла многократно (в врапперах для st_mode, st_mtime
st_size…), и попытаться объединить. Ну и убедиться, что самые дешёвые и
вероятные проверки стоят первыми и не изменившийся файл не читается (у
Печникова он читается 2-3 раза).


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Ответить