Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 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
3-1155563743
Patrick
2006-08-14 17:55
2006.10.15
Database Links в Oracle


2-1159354723
Gata
2006-09-27 14:58
2006.10.15
Печать в Delphi


9-1137326026
ZeFiR
2006-01-15 14:53
2006.10.15
Таблица рекордов


2-1159357747
Fostr
2006-09-27 15:49
2006.10.15
Передача информации от Form1.Edit1 к процедуре


2-1159615368
AriCK
2006-09-30 15:22
2006.10.15
2 listbox





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский