Форум: "Начинающим";
Текущий архив: 2006.10.15;
Скачать: [xml.tar.bz2];
ВнизИспользование Halt.. Найти похожие ветки
← →
pathfinder (2006-10-01 18:29) [0]Добрый вечер.
Подскажите пожалуйста, в чем разница использования halt и exit? И как используется exitcode который можно указать в halt?
← →
grisme © (2006-10-01 18:31) [1]procedure Halt [ ( Exitcode: Integer) ];
Description
Halt performs an abnormal termination of a program and returns to the operating system.
To perform a normal termination of a Delphi application, call the Terminate method on the global Application object. If the application does not use a unit that provides an Application object, call the Exit procedure from the main Program block.
Exitcode is an optional expression that specifies an exit code for the program.
← →
pathfinder (2006-10-01 18:38) [2]
> grisme © (01.10.06 18:31) [1]
Спасибо. Справка у меня тоже есть:)
Хотелось бы узнать в чем разница между normal и abnormal termination. Ну и второй вопрос тоже в силе..
← →
Проггер из библиотеки (2006-10-01 18:42) [3]ExitCode - осталось со времён MS-DOS.
В bat-файле можно проверить результат работы программы ERRORLEVEL. Если 0, то работа была завершена без ошибок.
Насчёт нормального и ненормального - это связано со стеком, который используется для работы с процедурами. Вообще же: Halt просто безжалостно вырубает прогу, Exit - аккуратно завершает работу текущей процедуры//функции.
← →
pathfinder (2006-10-01 19:01) [4]
> Проггер из библиотеки (01.10.06 18:42) [3]
А память при завершении проги холтом освобождается корректно?
← →
guav © (2006-10-01 19:01) [5]exit выход из подпрограммы (процедуры, функции или метода), halt - из программы.
значение возвращается ОС, может быть опрошено в bat файлах через if errorlevel или другой программой через GetExitCodeProcess
← →
Ketmar © (2006-10-01 19:14) [6]>[4] pathfinder 1-Oct-2006, 19:01
>А память при завершении проги холтом
>освобождается корректно?
никак не освобождается. ибо это не надо. потому как умирает весь АП скопом. вместе с его системными объектами и прочим.
← →
guav © (2006-10-01 19:19) [7]> никак не освобождается.
таки освобождается частично.
например глобальные переменные со строками. или всё что освобождается в финализации.
← →
pathfinder (2006-10-01 19:22) [8]
> никак не освобождается. ибо это не надо. потому как умирает
> весь АП скопом. вместе с его системными объектами и прочим.
>
Значит объекты которые я создал в ходе работы проги, которые при нормальном раскладе я убиваю методом Free, в случае завершения холтом убивать не надо, т.к. они и так убьются?
ps
прошу прощения за занудство:) просто хочется четко уяснить себе этот момент
← →
Ketmar © (2006-10-01 19:52) [9]угу. всё, что ты не добил сам -- добьёт ОС. %-)
← →
jack128 © (2006-10-01 23:00) [10]pathfinder (01.10.06 19:22) [8]
т.к. они и так убьются?
нет, они не убьются. Освободится память из под объектов и всё. Код деструктора объектов ествественно не будет выполнен.
← →
Ketmar © (2006-10-01 23:02) [11]>[10] jack128(c) 1-Oct-2006, 23:00
>нет, они не убьются. Освободится память из под
>объектов и всё. Код деструктора объектов
>ествественно не будет выполнен.
ну, это детали. %-)
← →
guav © (2006-10-01 23:04) [12]> ну, это детали. %-)
Существенные например для внешнего интерфейса, например сервера ворда, которому _Release не сделают.
← →
pathfinder (2006-10-01 23:11) [13]
> Существенные например для внешнего интерфейса, например
> сервера ворда, которому _Release не сделают.
У меня в проге есть экземпляры классов tidftp, tstringlist для них это критично?
← →
Ketmar © (2006-10-01 23:29) [14]>[13] pathfinder 1-Oct-2006, 23:11
>У меня в проге есть экземпляры классов tidftp,
>tstringlist для них это критично?
"сокетные" -- лучше закрывать. это не обязательно, но "бонтон". %-) TStringList"ам -- всё равно обычно.
но вообще -- лучше уничтожать всё, что создавал. тоже "бонтон".
← →
pathfinder (2006-10-01 23:36) [15]
> Ketmar © (01.10.06 23:29) [14]
Понятно. Спасибо:)
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.10.15;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.041 c