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

Вниз

Непонятки с WaitForSingleObject   Найти похожие ветки 

 
LOMic   (2003-09-22 11:45) [0]

Добрый день, мастера.
У меня под Win2000 тормозит код(вернее WaitForSingleObject долго работает). Под Win 95,98,Me,XP все OK. В чем проблема ?
Код:
APCmdString:= "Subst.exe <список параметров>";
ExitCode:= DWORD(-1);
ZeroMemory( @piProcInfo, sizeof(PROCESS_INFORMATION) );
ZeroMemory( @siStartInfo, sizeof(STARTUPINFO) );
siStartInfo.cb:= sizeof(STARTUPINFO);
Success:= CreateProcess(nil,
PChar (APCmdString),
nil,
nil,
FALSE,
CREATE_NO_WINDOW,
nil,
nil,
siStartInfo,
piProcInfo);
if Success then begin
HProcess:= piProcInfo.hProcess;
CloseHandle(piProcInfo.hThread);
if(WaitForSingleObject(HProcess, INFINITE) = AIT_OBJECT_0)
then begin
GetExitCodeProcess(HProcess, ExitCode);
CloseHandle(HProcess);
result:= TRUE;
exit;
end;
end;


 
Verg   (2003-09-22 12:06) [1]


> вернее WaitForSingleObject долго работает


О как?

Но он же ждет завершения "Subst.exe <список параметров>", что ж ему делать то еще?


 
LOMic   (2003-09-22 12:21) [2]

По факту Subst.exe <список параметров> уже отработала а WaitForSingleObject ждет еще секунд 10-15(под Win2000).
А под Win 95,98,Me,XP все OK...


 
Verg   (2003-09-22 12:28) [3]


> По факту Subst.exe <список параметров> уже отработала а
>


Факт - это ....?


 
Verg   (2003-09-22 12:31) [4]


> А под Win 95,98,Me, XP все OK...


http://delphimaster.net/view/4-1062738445/


 
LOMic   (2003-09-22 14:38) [5]

Факт - это появился или был удален виртуальный диск.
Можно увидеть диск например в Total Commander (т.е. subst уже отработал), а WaitForSingleObject ждет еще секунд 10-15(win2000). В Win 95,98,Me,XP у меня этого ожидания не наблюдается. Вотъ.


 
Verg   (2003-09-22 15:12) [6]

WaitForSingleObject понятия не имеет о каких-либо виртуальных дисках. Он ждет, когда система (ядро) переведет заданный объект ядра в "Сигнальное состояние" (ждет, надо сказать, добросовестно :)). И все, и ничего более.

Так что, не надо на него грешить, ищите в другом месте.


 
LOMic   (2003-09-22 15:53) [7]


> WaitForSingleObject понятия не имеет о каких-либо виртуальных
> дисках. Он ждет, когда система (ядро) переведет заданный
> объект ядра в "Сигнальное состояние" (ждет, надо сказать,
> добросовестно :)). И все, и ничего более


Это понятно. Я не говорю что WaitForSingleObject криво работает.
Может я процесс для Win2000 криво создаю. Может какие флаги надо установить, может что-нить еще?



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

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

Наверх




Память: 0.46 MB
Время: 0.01 c
1-56634
Maverico
2003-11-07 20:51
2003.11.17
Размер файла


6-56804
BlackSun
2003-09-21 19:11
2003.11.17
Ras+определение скорости коннекта


1-56715
mc_duck
2003-11-06 20:28
2003.11.17
Сохранение объекта в файл.


7-56926
aterm
2003-09-08 11:15
2003.11.17
Hook на передвижение курсоа мыши


1-56605
Micah'GF
2003-11-05 22:12
2003.11.17
Чем очистить TImage





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский