Показать сообщение отдельно
  #20  
Старый 12.03.2014, 18:32
novashdima novashdima вне форума
Новичок
 
Регистрация: 05.02.2010
Адрес: Украина, Киев
Сообщения: 64
Версия Delphi: XE3, XE4
Репутация: 10
По умолчанию

Цитата:
Сообщение от poli-smen
Ну это когда поток отпустит все критические секции и другие объекты.
Например здесь:
Код:
procedure MyThread.Execute;
begin
//  inherited; Это здесь не нужно
  while not Terminated do
  begin
    // Безопасная точка - проверяем не нужно ли приостановиться (Suspend)
     Analys;
  end;
end;
так у меня процедура анализ вызывается только при начале обработки, соответственно проверка выполниться только один раз до какой-либо работы потока.
Цитата:
Сообщение от poli-smen
Можно использовать для оповещения например сигнал TEvent, а проверять не приостановился ли поток через TEvent.WaitFor(100).
Вот это уже хорошая идея, надо будет попробовать.
Цитата:
Сообщение от poli-smen
Всегда лучше перестраховаться.
Я обычно очень много проверок ставлю, но потом постепенно улучшаю правило проверки и убираю ненужное после этого.
Цитата:
Сообщение от poli-smen
Если так, то вот этого делать не нужно:Т.е. при запуске приложения создали при завершении приложения разрушили, а посреди никаких созданий и разрушений быть не должно, в том числе и при ошибках.
Так этот код выполняется только если вылетело исключение, там же try except, если все завершилось удачно то ничего не разрушается
Ответить с цитированием