parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Ответ

Misha v.3 25.02.2006 23:42

теперь представьте, что вы можете открыть один хешфайл несколько раз. представили? а теперь вспомните, что с ним могут быть как операции чтения, так и операции записи. чтобы нормально работать с несколькими открытыми хешфайлами и не отгребать deadlock-ов вам все равно пришлось бы писать собственный механизм блокировок. если рассмотреть все с этой точки зрения, то открывания одного файла один раз лично для меня выглядит простейшим способом избежать подобной головной боли.

учитывая то, что кусок кода который открывает определенный файл и рассматривает его как хешфайл обычно один (ну... или это экземпляр одного класса), не вижу криминала сделать хешфайл переменной класса (если класс работает с несколькими хешфайлами, то хранить их все в хеше, который опять таки является переменной класса, а не объекта).

да, спорить не буду, если бы парсер сам делал подобное, лично мне было бы удобнее, однако это было бы не совсем очевидно: создали два объекта, а получили по сути две ссылки на один объект. обычно в парсере такого не принято, а ссылки на один объект мы получаем не при создании объектов, а при присвоении переменных.

так что я считаю это "фичей", а не "багом" :)