|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
08.06.2007, 22:00 | #1 |
Новичок
Джуниор
Регистрация: 08.06.2007
Сообщений: 1
|
Дескрипторы потоков - Для каждого элемента списка необходимо создать поток, выполняющий требуемые функции
Добрый день,
помогите разобраться с проблемкой: имеется список, хранящийся в ListView. Для каждого элемента списка необходимо создать поток, выполняющий требуемые функции. Должна быть возможность прервать выполнение потока. Проблема в том, что для этого необходимо хранить дескрипторы потоков привязанными к элементам списка. Для этого решил использовать указатель Data типа Pointer компонента ListItem (ListView.ListItem.Data). Код следующий: Код:
Во время выполнения программы при прерывании потока (P^.Terminate) появляется ошибка типа "Access violation ...", но поток все же прерывается. Ошибка эта выскакивает и не в среде Делфи (при запуске экзешника), то есть блок try...except здесь не помогает. Это последний элемент функциональности, но застрял на нем. Подскажите, пожалуйста, как избавиться от ошибки. Заранее благодарю |
09.06.2007, 07:49 | #2 |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,065
|
вместо dispose(P); попробуй P^.Free;
|
09.06.2007, 11:12 | #3 |
Пользователь
Регистрация: 31.05.2007
Сообщений: 56
|
Выстави у потока FreeOnTerminate := True и достаточно будет ему сказать только P^.Terminate; Все остальное он сделает сам
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Создать отдельный поток для отправки письма | betirsolt | Работа с сетью в Delphi | 2 | 28.12.2009 22:39 |
удаление элемента из списка | aurora_87 | Общие вопросы C/C++ | 1 | 18.06.2009 14:02 |
Необходимо создать форму для регистрации на сайте | Mirrra | Фриланс | 2 | 28.04.2009 15:28 |
Создать программу для вычисления значения функции. | wertion | Помощь студентам | 2 | 27.11.2008 20:53 |