[devel] libgtk+2
Dmitry V. Levin
=?iso-8859-1?q?ldv_=CE=C1_altlinux=2Eorg?=
Пн Сен 8 18:23:17 MSD 2008
On Mon, Sep 08, 2008 at 06:18:03PM +0400, Yuri N. Sedunov wrote:
> В Пнд, 08/09/2008 в 17:49 +0400, Dmitry V. Levin пишет:
> > On Mon, Sep 08, 2008 at 01:51:06PM +0400, Alexey Tourbin wrote:
> > > Юрий Седунов просил меня реализовать posttrans filetriggers,
> > > чтобы решить проблему c gtk icon cache в branch-4.1 (для предостящего
> > > релиза дистрибутива).
> > >
> > > Проблема это такая: библиотека libgtk+2 может использовать кеш
> > > иконок /usr/share/icons/hicolor/icon-theme.cache, чтобы ускорить
> > > загрузку иконок. По умолчанию этот кеш отсутствует; но если он создан,
> > > то libgtk+2 не находит иконки, отсутствующие в кеше (но существующие в
> > > файловой системе).
> >
> > Такое поведение libgtk+2 считаю глубоко порочным. Представьте себе, что
> > ld-linux.so при наличии файла /etc/ld.so.cache будет игнорировать те
> > библиотеки в %_lib и %_libdir, которых в /etc/ld.so.cache нет.
> >
> > Лучше исправить libgtk+2, чем городить объезды вокруг.
>
> Нет, -- механизм работает и отказываться от него не надо.
Механизм работает, но при этом содержит серьёзный архитектурный изъян,
из-за которого возникают проблемы.
> "GTK+ can use the cache files created by gtk-update-icon-cache to avoid
> a lot of system call and disk seek overhead when the application starts.
> Since the format of the cache files allows them to be mmap()ed shared
> between multiple applications, the overall memory consumption is reduced
> as well."
Из утверждения о том, что cache ускоряет работу, не следует, что cache
априори содержит более достоверную информацию, чем файлы, из которых он
построен. Всякий cache нужно правильно invalidate'ить.
--
ldv
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип : application/pgp-signature
Размер : 197 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20080908/7801a8b1/attachment-0002.bin>
Подробная информация о списке рассылки Devel