![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Delphi,Python,PHP
Форумчанин
Регистрация: 04.04.2009
Сообщений: 138
|
![]()
Из за чего пишет неверный дескриптор когда я останавливаю поток
останавливаю так: PHP код:
PHP код:
|
![]() |
![]() |
![]() |
#2 |
Участник клубаДжуниор
Регистрация: 23.08.2008
Сообщений: 1,616
|
![]()
и на что указывает?
pushl $0x18E3DF6B
call ICQ |
![]() |
![]() |
![]() |
#3 |
Delphi,Python,PHP
Форумчанин
Регистрация: 04.04.2009
Сообщений: 138
|
![]() |
![]() |
![]() |
![]() |
#4 |
Участник клубаДжуниор
Регистрация: 23.08.2008
Сообщений: 1,616
|
![]()
Я понял, но она то должна указывать на строчку на которой выпадает ошибка
pushl $0x18E3DF6B
call ICQ |
![]() |
![]() |
![]() |
#5 |
Delphi,Python,PHP
Форумчанин
Регистрация: 04.04.2009
Сообщений: 138
|
![]()
FlooderThread.Terminate;
тут указывает |
![]() |
![]() |
![]() |
#6 |
Регистрация: 14.08.2009
Сообщений: 8
|
![]()
А ты уверен что в момент вызова FlooderThread.Terminate , поток еще существует ведь ты ему задал FlooderThread.FreeOnTerminate := True
По моему тогда уж лучше в ручную делать free такому потоку. Ну и делать так тоже не очень FlooderThread := TFlooderThread.Create(false); после это поток сразу начинает выполняется а ты ему свойства уже походу присваиваешь тут FlooderThread.Priority := tpNormal; FlooderThread.FreeOnTerminate := True; нет гарантии что поток уже не выполнится до того как ты задашь эти свойства тогда уж лучше FlooderThread := TFlooderThread.Create(true); задать свойства потока а потом FlooderThread.resume |
![]() |
![]() |
![]() |
#7 | |
Delphi,Python,PHP
Форумчанин
Регистрация: 04.04.2009
Сообщений: 138
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#8 |
Участник клуба
Регистрация: 11.01.2009
Сообщений: 1,917
|
![]()
А может был так объявить его :
Код:
"Заряженному танку в дуло не смотрят" @Dekmer in WoT
|
![]() |
![]() |
![]() |
#9 |
Регистрация: 14.08.2009
Сообщений: 8
|
![]()
Трудно сказать что у тебя происходит , не знаю что делается внутри Thread. Единственное что можно сказать , это то что в тот момент когда ты вызываешь FlooderThread.Suspend - thread уже отработал и по скольку ему было выставлено FlooderThread.FreeOnTerminate := True; то он уже удалился и по этому происходит сообщение об ошибке . Не плохо было бы оставить FreeOnTerminate := false ; и посмотреть как это будет работать при таком раскладе ну и попробовать как то подстраховатся и вызывать suspend только если Thread еще активна
|
![]() |
![]() |
![]() |
#10 | |
Delphi,Python,PHP
Форумчанин
Регистрация: 04.04.2009
Сообщений: 138
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ошибка при работе с canvas "Неверный дескриптор" | Алекс Ялта | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 17 | 13.06.2011 22:32 |
Неверный запрос | Gromsky | SQL, базы данных | 9 | 21.08.2009 18:25 |