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

Вниз

AV при обработке MM таймера.   Найти похожие ветки 

 
@!!ex ©   (2007-08-30 15:22) [0]

timerID:=timeSetEvent(100,0,@TimerProc,0,TIME_PERIODIC);
sleep(2000);
timeKillEvent(TimerID);


procedure TimerProc(utimerID,uMessage:uint; dwUser,dw1,dw2:Word);
begin
end;


Падает после первого выполнения TimerProc.
Не понимаю почему.


 
@!!ex ©   (2007-08-30 15:23) [1]

Все понял.
Тупо забыл stdcall.


 
Инс ©   (2007-08-30 18:53) [2]

Только к VCL из TimerProc не нужно обращаться


 
@!!ex ©   (2007-08-30 19:04) [3]

> [2] Инс ©   (30.08.07 18:53)

У меня нет VCL.


 
Инс ©   (2007-08-30 19:07) [4]


> У меня нет VCL.


Тогда ладно, просто имейте в виду, вдруг вы не знаете (многие на эти грабли наступают) - тело функции таймера выполняется в отдельном потоке. Учтите это.


 
@!!ex ©   (2007-08-30 19:23) [5]

> [4] Инс ©   (30.08.07 19:07)

основная причина, по которой решил юзать таймер - отдельный поток. :)
Поскольку нужно выполнить некоторые действия, когда основной поток висит.
ПРавда уже обломилось, пришлось без таймера делать. :((


 
Kolan ©   (2007-08-30 19:29) [6]

> когда основной поток висит.

Я что-то не понимаю? Обычно доп потоки нужны чтобы осн. не висел, а тут наоборот&#133


 
Инс ©   (2007-08-30 19:33) [7]


> Обычно доп потоки нужны...


Где они только не нужны... То, что вы привели - лишь частный случай.


 
@!!ex ©   (2007-08-30 19:36) [8]

> Я что-то не понимаю? Обычно доп потоки нужны чтобы осн.
> не висел, а тут наоборот…

ЛОЛ.
Разные бывают причины.


 
Leonid Troyanovsky ©   (2007-08-30 19:42) [9]


> Инс ©   (30.08.07 18:53) [2]

> Только к VCL из TimerProc не нужно обращаться

Там, во-ще, много к чему нельзя обращаться.
В ограничениях явно перечислено к чему можно.

--
Regards, LVT.


 
Инс ©   (2007-08-30 19:53) [10]


> [9] Leonid Troyanovsky ©   (30.08.07 19:42)

Вообще да, сейчас глянул, ужаснулся.


 
@!!ex ©   (2007-08-30 19:58) [11]

> [9] Leonid Troyanovsky ©   (30.08.07 19:42)

Да ко всему можно, только надо помнить о совместном доступе, для этого и реализовали, например, симафоры.


 
Leonid Troyanovsky ©   (2007-08-30 20:00) [12]


> @!!ex ©   (30.08.07 19:58) [11]

> Да ко всему можно

Хозяин - барин.

Кста, у тебя еще висит?

--
Regards, LVT.


 
@!!ex ©   (2007-08-30 20:35) [13]

> Кста, у тебя еще висит?

процесс? :)
Конечно висит, он по другому и не может в принципе, как никак он около 100 мегабайт запакованных данных должен считать и распаковать, а в некоторых случаях еще и распарсить.



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

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

Наверх




Память: 0.49 MB
Время: 0.048 c
2-1188551855
Gloomer
2007-08-31 13:17
2007.09.23
Как узнать ошибку по значению GetLastError


1-1184321703
=BuckLr=
2007-07-13 14:15
2007.09.23
Определение граббинга и грабберов экрана


2-1188370787
Бандерас
2007-08-29 10:59
2007.09.23
Дополнительно поле в Query


15-1187946133
@!!ex
2007-08-24 13:02
2007.09.23
Бумажная библиотека.


15-1187758204
de.
2007-08-22 08:50
2007.09.23
PHP and MS SQL Server