-
Было очень удобно порой на него заглядывать. Если бы знал, что он исчезнет, наверное бы закачал его целиком заранее и захостил бы в виде зеркала. Если у кого осталось содержимое ресурса, буду рад, если поделитесь. Могу выложить на своем компе с именем вроде kolmck.ddns.net.
-
-
Фигасе! Я даже не знал, что бывает такой сервис.
-
The mail system
<vk@kolmck.net>: Host or domain name not found. Name service error for name=kolmck.net type=MX:
Host not found, try again .(
-
-
Остался ли у кого-то архив с компонентами Кладова для VCL? Архив назывался, если склероз не изменяет, KladovVCL.zip.
-
-
Премного благодарен!
-
Будет жить? Или KOL умер??
-
Нынешний, вероятно, умер.
В КОЛе утечек памяти много - проверил на FPC. Код получается "грязный". КОЛ надо переписывать с объектов на классы. Немного увеличится размер, но будет проще. Плюс либо избавляться от асма совсем, либо дописывать варианты для 64 бит на асме.
-
>Плюс либо избавляться от асма совсем.
Солидарен. Много много лет назад я об этом говорил. Очень сложно поддерживать и синхронизировать библиотеку написанную на двух языках.
-
KOL задумывался как кодоэкономичная библиотека, классы добавят навороты и убавят экономичность. Но лично я, например, тоже не против избавления от асма.
-
На данный момент размер исполняемого файла всем пофигу. Я согласен с тем, что сложное приложение, имеющее размер COMMAND.COM это круто (и мне самому это нравится - что уж тут скрывать), но в данное время при наличии терабайтов на диске и 100мбит/1Гбит каналов связи размер мало имеет значения.
Классы добавят автоматическое удаление потомков и все связанное с этим. Упростится переделка сторонних компонент. Пропадут утечки памяти, связанные с постоянной работой с указателями на объекты. Появится полноценная возможность трассировки с просмотром любых значений свойств этих объектов (читай классов) - в данный момент отладчики D5/D7 (более старшие не пробовал) не могут полноценно работать с объектами (это мелочи). Немного улучшится кроссплатформенность - КОЛ несет в себе все, не требуя практически никаких доп. модулей, кроме стандартных. Я замучался адаптировать КОЛ под FPC - а когда он наконец-то заработал и я увидел, что творится в памяти - понял, что нуегонафик эти объекты. При всех этих достоинствах я соглашусь на некое увеличение кода. В FPC 3.0 в 32-битном режиме exe с пустой формой занимал примерно 31кб, в 64-битном - 47кб. Что все равно ГОРАЗДО лучше громадных VCL-приложений, которые растут как на дрожжах. Так что 16кб и 32кб в D5 - невелика разница.
-
В Delfi тоже утечки?
-
В Дельфи нет средства для контроля за утечками памяти.
-
> В КОЛе утечек памяти много - проверил на FPC
А где конкретно?
> В Дельфи нет средства для контроля за утечками памяти.
Есть отдельный memproof Есть встроенный\и отдельно устанавливаемый FastMM Есть madCollection...
Периодически смотрю - никаких утечек.. Поэтому неплохо бы конкретики
-
Сначала везде где есть создание объектов и выделение памяти (а также освобождение) поставил вывод в лог всего что, в каких кол-вах запрашивается и удаляется. Выяснилось, что объекты создаются дважды(!!). Мб это особенность FPC, но форма с меткой и кнопкой создает два объекта формы, 2 кнопки и 2 метки. Везде где есть Getmem/Freemem все создается и освобождается правильно. Но объекты создаются дважды, а удаляются 1 раз. Встроенная в FPC проверка на утечки этого же приложения в лог выдает - запрошено 11 областей памяти, освобождено 8 или 9 (не помню точно). Допускаю, что средство неверно работает с объектами, равно как и FPC может отличаться особенностями работы с объектами. Но нет никакой гарантии, что вышеприведенные средства для Дельфи гарантированно верно работают с объектами. В итоге "все хорошо, прекрасная маркиза" также могут быть и неверными данными.
-
Вполне возможно, что при развитии FPC что-то переделали, а об объектах банально забы(и)ли.
-
Объекты оставлены в режиме совместимости со старых версий. Это, емнип, частный случай класса в старых досовских турбо-паскалях и ныне считается как устаревший. В итоге отладчик ни в одной версии (новее бесплатного Turbo Explorer'а не проверял) не работает с ними корректно. Опять-таки, емнип, они есть, но их не рекомендуют использовать. Взято с этого же форума: object, в отличие от class, не требует обязательного выделения кучевой памяти для размещения экземпляра, поэтому экз-р object может быть автоматически создан компилятором в секции данных или в стеке, в зависимости от того где он объявлен. >> а об объектах банально забы(и)ли Это вряд ли. Тогда их просто выбросили бы, раз они устаревшие.
-
По автоматическому созданию объекта - это только для статического объекта. Утечек в этом случае по идее должно быть не больше чем от локальных\глобальных переменных.
|