|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
29.03.2012, 09:10 | #1 |
Форумчанин
Регистрация: 05.06.2010
Сообщений: 154
|
Closehandle (thread)-ошибка чтения памяти.
Все доброго времени суток. Суть вот в чем: при загрузке программы открывается форма (якобы загрузочная, для примера вот как офис 10), на create стоит таймер, который запускает функцию анимации в потоке. делаю это с помощью BeginThread. так вот. Когда все отработало, по закрытию формы я пишу Closehandle. Вылетает ошибка чтения памяти. Скорее всего я что-то не так делаю, но не могу понять что. В примерах, что нашел в интернете, методика такая же: сначала BeginThread, потом Closehandle. Подскажите, что я делаю не так?
|
29.03.2012, 09:26 | #2 | |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,526
|
Цитата:
программа — запись алгоритма на языке понятном транслятору
|
|
29.03.2012, 09:29 | #3 |
Форумчанин
Регистрация: 05.06.2010
Сообщений: 154
|
да суть не в том что именно я делаю, а как) есть процедура. я ее запускаю с помощью beginthread. в процедуре стоит цикл. и он выполняется пока переменная тру. на закрытии формы я присваиваю этой переменной фолс и пишу closehandle. Вылетает ошибка чтения памяти.
|
29.03.2012, 09:31 | #4 |
Форумчанин
Регистрация: 05.06.2010
Сообщений: 154
|
Код:
|
29.03.2012, 09:32 | #5 | |
Форумчанин
Регистрация: 11.07.2010
Сообщений: 914
|
Цитата:
Видимо Closehandle вызывется неоднократно. Попробуйте после Closehandle обнулить переменную thread. |
|
29.03.2012, 09:35 | #6 |
Форумчанин
Регистрация: 05.06.2010
Сообщений: 154
|
|
29.03.2012, 13:42 | #7 | ||||
Старожил
Регистрация: 20.04.2008
Сообщений: 5,526
|
Цитата:
Цитата:
это мои догадки не подтвежденные вашим кодом да еще Цитата:
Цитата:
программа — запись алгоритма на языке понятном транслятору
|
||||
29.03.2012, 13:50 | #8 |
Форумчанин
Регистрация: 05.06.2010
Сообщений: 154
|
Closehandle))) Не внутри конечно. А то что я код написал. Я по аналогии делаю. Нет сейчас моего кода под рукой
|
02.04.2012, 09:43 | #9 |
Форумчанин
Регистрация: 08.07.2010
Сообщений: 505
|
CloseHandle можно и внутри. Это говорит винде, что поток нас больше не интересует. Но не закрывает его. Нужен код функции, запускаемой потоком, вызовы самих потоков, процедуру закрытия.
Знающий не говорит, говорящий не знает (С) Лао Цзы
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ошибка чтения памяти при посылки дублирующей команды Close Вспомогательной Форме (Form2) | deryt | Общие вопросы Delphi | 4 | 09.01.2012 22:14 |
Ошибка 100: Ошибка чтения с диска. | vodilawofer | Помощь студентам | 5 | 28.12.2011 22:49 |
Попытка чтения защищенной памяти | Cannibal | Общие вопросы C/C++ | 1 | 06.11.2011 15:16 |
Ошибка чтения из памяти | Шульц | Общие вопросы Delphi | 20 | 03.11.2009 12:26 |
Thread creation error - Недостаточно памяти | RealSwift | Общие вопросы Delphi | 1 | 06.07.2008 12:27 |