Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.10.15;
Скачать: CL | DM;

Вниз

Использование 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;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.062 c
2-1159632595
0_o
2006-09-30 20:09
2006.10.15
Событие в определенные моменты времени


15-1158721392
Думкин
2006-09-20 07:03
2006.10.15
Импортирование и время


1-1157096899
NiGGa
2006-09-01 11:48
2006.10.15
Переход D5 -> D7


2-1159365059
RainKMM
2006-09-27 17:50
2006.10.15
Поиск файлов


2-1159266563
syte_ser78
2006-09-26 14:29
2006.10.15
отладка выборочных юнитов