Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2002.03.07;
Скачать: [xml.tar.bz2];

Вниз

Приостановка приложения   Найти похожие ветки 

 
Burmistroff   (2002-01-08 23:56) [0]

Подскажите пожалуйста, как можно приостановить работу приложения (с последующим возобновлением)? Есть идея заморозить все thread"ы процесса, но так ли это правильно?


 
Кострюков Сергей   (2002-01-09 00:05) [1]

Для заморозки приложения на некоторое время сделай процедуру, которая:
1. Спросит текущее время процедурой Now;
2. Процедурой DecodeDate и DecodeTime разобьет это на отденьные переменные (минуты, секунды, часы,...);
3. К этим значениям прибавишь сколько надо времени (напр
Min = Min + 1 // Задержаться 1 минуту)
4. поставить цикл, который будет спрашивать время и сравнивать его с существующим, пока существующее не станет более поздним!
Все!!! Кодировать сам будешь!


 
Алексей Петров   (2002-01-09 10:11) [2]

Заморозка всех thread-ов и есть приостановка приложения (кроме thread-ов выполняться больше там не чему). Но есть некоторая опасность, что в момент остановки процесс захватил какой нибудь ресурс (ну Mutex, например), тогда он будет его держать все время, пока остановлен...

Если процесс свой - лучше всего сделать в нем функцию "Suspend", доступную из вне. А в этой функции будет для каждого thread-а выставляться флаг: "зделай себе suspend, как только сможешь".
Нужно правда еще обыграть ситуацию с уже заSuspend-еными потоками, что-бы их при разморозке не запустить вопреки логике программы.


 
Burmistroff   (2002-01-09 13:55) [3]

> Кострюков Сергей
Имелось ввиду чужое приложение ;)



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

Форум: "WinAPI";
Текущий архив: 2002.03.07;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.004 c
4-19396
BorisM
2002-01-07 19:40
2002.03.07
Как сделать Paste в другое приложение


1-19200
MK
2002-02-16 18:28
2002.03.07
Форма на весь экран


6-19287
Alexey_K
2001-12-15 16:51
2002.03.07
Ping


14-19329
ses
2002-01-18 18:48
2002.03.07
Как можно???????????


1-19226
maks_f
2002-02-18 10:11
2002.03.07
Свойства объекта





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский