Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.83
arist
0 / 0 / 0
Регистрация: 14.02.2011
Сообщений: 100
#1

Как определить состояние SUSPENDED потока? - C++

06.05.2006, 11:51. Просмотров 1516. Ответов 8
Метки нет (Все метки)

Один способ вроде как знаю, но он мне не нравится:
Вызвать SuspendThread которая вернёт предыдущее значение счётчика...
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Joey
Джоуи Скалолазер
399 / 313 / 87
Регистрация: 05.05.2015
Сообщений: 1,820
Записей в блоге: 2
25.02.2017, 14:25     Как определить состояние SUSPENDED потока? #2
Цитата отсюда http://www.e-reading.club/chapter.ph...e_Windows.html
Не существует способа, позволяющего программе определить состояние другого потока (разумеется, если поток выполняется, то он находится в состоянии выполнения, и поэтому ему нет никакого смысла определять свое состояние). Даже если бы такой способ и существовал, то состояние потока может измениться еще до того, как опрашивающий поток успеет предпринять какие-либо действия в ответ на полученную информацию.
Убежденный
Системный программист
Эксперт С++
15299 / 6931 / 1096
Регистрация: 02.05.2013
Сообщений: 11,341
Завершенные тесты: 1
25.02.2017, 15:02     Как определить состояние SUSPENDED потока? #3
На самом деле способ есть, просто он не документирован и корректность
его работы, а также переносимость между версиями Windows, никем
не гарантируется. Ну то есть это хардкорный махровый undocumented/internals
со всеми вытекающими. Подробнее здесь:

How to get thread state (e.g. suspended), memory + CPU usage, start time, priority, etc
http://stackoverflow.com/questions/2...rt-time-priori
Joey
Джоуи Скалолазер
399 / 313 / 87
Регистрация: 05.05.2015
Сообщений: 1,820
Записей в блоге: 2
25.02.2017, 15:06     Как определить состояние SUSPENDED потока? #4
Здорово откопал!

Не по теме:

ну и в древний же я топик попал...

Evg
25.02.2017, 15:59
  #5

Не по теме:

Более 10 лет прошло. Наверное рекорд среди некропостов

Captain Maxee
25.02.2017, 16:07
  #6

Не по теме:

Evg, регистрация ТС -- 2011 год, а тема создана в 2006. Как такое возможно?)

GbaLog-
25.02.2017, 16:13
  #7

Не по теме:

Цитата Сообщение от Captain Maxee Посмотреть сообщение
Как такое возможно?
Раньше можно было создавать темы и без регистрации. Вполне возможно, что темы присваивались по ip, после регистрации "гость" заменился на ник. Хотя, это лишь мои догадки.

Joey
Джоуи Скалолазер
399 / 313 / 87
Регистрация: 05.05.2015
Сообщений: 1,820
Записей в блоге: 2
25.02.2017, 16:17     Как определить состояние SUSPENDED потока? #8
А как вам метод ТСа?
Цитата Сообщение от arist Посмотреть сообщение
Вызвать SuspendThread которая вернёт предыдущее значение счётчика...
GbaLog-, Ну и долго же он раздумывал перед тем, как зарегиться...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.02.2017, 17:32     Как определить состояние SUSPENDED потока?
Еще ссылки по теме:
Как узнать текущее состояние видео проигрывателя C++
Как получить состояние (release/debug) проекта? C++
C++ Вызывть метод одного потока из другого потока
чтение строки как потока C++
Как дождаться завершения потока? C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Evg
25.02.2017, 17:32     Как определить состояние SUSPENDED потока?
  #9

Не по теме:

Цитата Сообщение от Captain Maxee Посмотреть сообщение
Evg, регистрация ТС -- 2011 год, а тема создана в 2006. Как такое возможно?)
Не иначе, как нечистая сила...

Yandex
Объявления
25.02.2017, 17:32     Как определить состояние SUSPENDED потока?
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru