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

Вниз

Помогите с потоками   Найти похожие ветки 

 
Игнат   (2002-06-24 16:35) [0]

У меня в программе запускается N потомков Tthread для выполнения
неких фоновых действий. Периодически (но не регулярно и не систематически) один из потоков рушится с сообщением EAccessViolation. Я себе уже голову сломал, везде где можно стоят try ... except. Подскажите, если кто сталкивался, ГДЕ искать исток ошибки!


 
MBo ©   (2002-06-24 16:40) [1]

Синхронизация присутствует?


 
Игнат   (2002-06-24 16:47) [2]

Да, использую Synchronize для отношений поток-форма и CriticalSection для связи между потоками


 
MBo ©   (2002-06-24 16:49) [3]

без кода вряд ли кто что подскажет


 
Digitman ©   (2002-06-24 16:57) [4]

Вот ты когда окошко с EAccessViolation получаешь, не задумываешься разве, что за информация приводится в этом окне ? кроме, собственно, имени класса исключения ? Это ж тебе информация дается, а не кому-то там ... причем - достаточно детальная !

Ведь в окне, сообщающем тебе о произошедшем исключении, еще и адрес строки , вызвавшей исключение, наверняка присутствует ! И этот адрес чрезвычайно важен для целей отладки ! И DelphiIDE-меню есть соответствующее : Search | Find Error ... И выбор этого меню (с последующим указанием того самого адреса, что ты считаешь чушью, не имеющей к твоей программе никакого отношения - так ведь ?) в большинстве случаев моментально укажет тебе строчку в твоем тексе, при выполнении которой происходит это самое исключение !


 
kull ©   (2002-06-24 17:33) [5]


> Digitman © (24.06.02 16:57)

А умище-то, умище-то куда девать...


 
Игнат   (2002-06-24 18:10) [6]

Спасибо, про такой путь я не подумал...
Правда, ошибка забавная - Неизвестное исключение.


 
Sasha9 ©   (2002-06-24 18:15) [7]

а ты пробовал запускать прогу не из дельфи?


 
kull ©   (2002-06-24 18:32) [8]

Обычно если стоит галочка Stop on Delphi Exception, то отладчик указывает в какой строке Access violation.
Но иногда не указывает, вот тут Find Error может и не помочь.


 
Digitman ©   (2002-06-24 18:33) [9]

>Игнат

Как это "Неизвестное исключение" ? Ты же упомянул EAccessViolation вроде бы ?


 
Digitman ©   (2002-06-24 18:37) [10]

>kull

Не болтай ерунду ! Ошибку (по кр. мере уж модуль, в котором она произошла) можно определить всегда. И сделать это до примитивности просто. На то существует ImageBase модуля.


 
msts   (2002-06-24 19:34) [11]

http://www.dps.aeed.tpu.edu.ru/gurin/gala/index.htm



Страницы: 1 вся ветка

Текущий архив: 2002.07.08;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.014 c
3-23524
Shirson
2002-06-18 10:17
2002.07.08
Как создать таблицу dBASE (.dbf) из Delphi при помощи ADO?


6-23720
Konstantin Borodachev
2002-04-25 14:42
2002.07.08
Проблема с Indy и OpenSSL


1-23631
Коврик
2002-06-23 19:36
2002.07.08
Управление приложениями


6-23693
Filat
2002-04-10 17:20
2002.07.08
Обмен файлами между организацией и её клиентами через Интернет?


1-23548
PTE
2002-06-26 17:12
2002.07.08
как выбрать путь к файлу и скопировать его в Edit