|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Timur Vafin 2:5020/400 02 Mar 2004 17:04:11 To : All Subject : автокеширование объектов -------------------------------------------------------------------------------- Hi All, Сразу прошу прощения за некорректный сабж. Есть класс, Class в нем определены методы test_sub. Хочется вызвать некотрую функцию перед выполнением этих методов. Т.е. когда говрят Class->test_sub перел тем как выполнить test_sub из класса Class необходимо вызвать, на пример, cache_sub. Идея заключается в том, чтобы при помощие некоего инструмента указывать какие обекты должны класться в кеш ( Cache::Cache ). Реализовать это предлагается по выше указаной методике. Решение в голову приходит пока одно. Завести список, в котором будут лежать имена методов, которые необходимо кешировать. Далее метод, который должен браться из кеша вызывать как Class->cached_test_sub вместо Class->test_sub. cached_test_sub ловить в AUTOLOAD, проверять наличие префикса cached в имени метода, проверять наличие имени метода в указанном списке и проверить $self->can() для этого метода. Ишется более правильное решение. Всё будет хорошо.... --- ifmail v.2.15dev5.3 * Origin: FidoNet Online - http://www.fido-online.com (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/16679286448bd.html, оценка из 5, голосов 10
|