Форум: "Система";
Текущий архив: 2002.10.28;
Скачать: [xml.tar.bz2];
Вниз->>> Как можно приостановить Process. Найти похожие ветки
← →
Metallica (2002-08-21 12:21) [0]Как можно приостановить, а потом возобновить выполнение ПРОЦЕССА.
← →
Ученик (2002-08-21 12:36) [1]Чужого ?
← →
Юрий Зотов (2002-08-21 12:59) [2]Процесса - никак. Исполняются не процессы, а их потоки.
Чужого - Suspend/ResumeThread.
Своего - либо задержка, либо Suspend/ResumeThread из ДРУГОГО потока (поскольку возобновить сам себя поток не сможет).
← →
Metallica (2002-08-21 13:21) [3]> Ученик
Да, чужой.
← →
Metallica (2002-08-21 13:24) [4]Юрий Зотов © (21.08.02 12:59)
А как сделать, что-бы не проходить по всем потокам процесса?
← →
Digitman (2002-08-21 17:14) [5]>Metallica
Если ты о snapshot"е потоков заданного процесса, полученных механизмом ToolHelp, то первый (среди перечисленных) кодовый поток процесса будет основным (т.е. автоматически созданным и стартованным операционной системой при создании данного процесса), прочие же возможные - дополнительными.
Пока у меня не было повода сомневаться в этом.
← →
Юрий Зотов (2002-08-21 18:21) [6]> А как сделать, что-бы не проходить по всем потокам процесса?
Честно говоря, не знаю. Думаю, что никак.
Более того, здесь порядок может иметь значение. Те микросекунды, которые проходят между остановкой/рестартом отдельных потоков, вообще говоря, могут привести к их рассогласованию и оказаться гибельными для процесса в целом (поскольку логику работы произвольной чужой программы мы знать заведомо не можем).
← →
Metallica (2002-08-21 18:25) [7]Digitman © (21.08.02 17:14)
Если я понял правильно, при остановке основного потока данного
процесса, остальные потоки тоже останавливаются...
← →
Digitman (2002-08-21 18:47) [8]>Metallica
Нет, ты неверно понял. С чего бы им останавливаться-то, всем потокам сразу ? Будет приостановлен/возобновлен лишь тот код.поток, хэндл которого передан параметром в соот.ф-ции управления потоком.
Скорее всего, я тебя неправильно понял, посчитав, что твоя задача - найти осн.код.поток заданного процесса и приостановить/возобновить его.
Соглашусь, пожалуй, с <Юрий Зотов © (21.08.02 18:21) > - произвольно манипулировать кодовыми потоками "чужого" процесса чревато фатальными ошибками.
← →
Да, (2002-08-22 04:38) [9]тут следует "приостановить", а потом "возобновить" не процесс, а саму систему, имхо Windows.
Страницы: 1 вся ветка
Форум: "Система";
Текущий архив: 2002.10.28;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.007 c