Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.015 c
3-1179500564
remlin
2007-05-18 19:02
2007.09.23
Фильтрация ADOQuery


2-1188396599
Oleg_teacher
2007-08-29 18:09
2007.09.23
BDE


2-1187166562
DevilDevil
2007-08-15 12:29
2007.09.23
лимит стека


15-1187724746
Rouse_
2007-08-21 23:32
2007.09.23
Возвращение к истокам


2-1188462080
Kolan
2007-08-30 12:21
2007.09.23
Динамическая вставка пунктов меню в «нужные» места, как?




   Наверх