Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.07.2014, 15:10   #1
DarkSmile
Пользователь
 
Регистрация: 14.03.2013
Сообщений: 24
По умолчанию Определение состояния потока

Здравствуйте! Мне нужно определить стоит ли поток на паузе и если стоит, то снять с паузы, тобиш:
Код:
if остановлен then
  ResumeThread(tHandle);
Так вот, как определить стоит ли поток на паузе или нет (поток чужого процесса)?
DarkSmile вне форума Ответить с цитированием
Старый 29.07.2014, 15:33   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

ошибки не возникнет если попытаетесь отпаузить поток не на паузе.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 29.07.2014, 15:43   #3
DarkSmile
Пользователь
 
Регистрация: 14.03.2013
Сообщений: 24
По умолчанию

Но мне нужно постоянно определять, если постоянно выполнять ResumeThread это сильно напрягает комп
DarkSmile вне форума Ответить с цитированием
Старый 29.07.2014, 15:52   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Судя по хелпу:
Цитата:
The ResumeThread function checks the suspend count of the subject thread. If the suspend count is 0, the thread is not currently suspended. Otherwise, the subject thread's suspend count is decremented. If the resulting value is 0, then the execution of the subject thread is resumed.
If the return value is 0, the specified thread was not suspended. If the return value is 1, the specified thread was suspended but was restarted. If the return value is greater than 1, the specified thread is still suspended.
Пепел Феникса дело говорит.

а тормоза, которые ты ловишь, видимо из другого источника исходят.
Например ты проверяешь в доппотоке, который не имеет sleep(), т.е. работает постоянно.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 29.07.2014, 16:03   #5
DarkSmile
Пользователь
 
Регистрация: 14.03.2013
Сообщений: 24
По умолчанию

Значит если выполнять его в отдельно потоке с задержкой Sleep в секунд 500, то СР насиловать не будет?
DarkSmile вне форума Ответить с цитированием
Старый 29.07.2014, 16:17   #6
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

а зачем вообще постоянно долбить поток?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 29.07.2014, 16:24   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
то СР насиловать не будет?
Нет )
Присоединяюсь к вопросу пепла - зачем это понадобилось?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 29.07.2014, 18:05   #8
DarkSmile
Пользователь
 
Регистрация: 14.03.2013
Сообщений: 24
По умолчанию

Моя программа взаимодействует с другими процессами, для работы с процессом, его поток должен быть в рабочем состоянии тобиш не на паузе, но люди ведь дубины могут "заморозить" процесс например ArtMany или подобной софтиной, это своего рода взлом моего гуи)
DarkSmile вне форума Ответить с цитированием
Старый 29.07.2014, 18:15   #9
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ха! а ты думаешь что твой монитор процессов нельзя заморозить?
Ну и ну )))
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 29.07.2014, 18:19   #10
DarkSmile
Пользователь
 
Регистрация: 14.03.2013
Сообщений: 24
По умолчанию

Да мой то как раз и не нужно морозить.
А доперло, можно же оба процесса заморозить

Последний раз редактировалось DarkSmile; 29.07.2014 в 18:22.
DarkSmile вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ФЯ хранение состояния. the_deer_one Свободное общение 2 07.06.2013 21:18
Как получить доступ к методу потока(TThread) из основного потока? Pcrepair Общие вопросы Delphi 3 30.03.2013 14:52
Должно быть 3 потока. А диспетчер задач показывает, что потока создано 2 BEL9ILLI Общие вопросы Delphi 3 06.12.2011 20:26
Как узнать номер потока из самого потока? GaMeSTeR Помощь студентам 0 03.12.2010 09:50
Определение состояния Checkbox по состоянию базы Wi1D БД в Delphi 1 02.11.2009 18:56