0 / 0 / 2
Регистрация: 20.11.2011
Сообщений: 73
1

создание и завершение потока (_beginthreadex,_endthreadex)

30.10.2013, 01:18. Показов 4802. Ответов 3
Метки нет (Все метки)

написал програмку для создания и завершения потока через функцию _beginthreadex,_endthreadex, но у меня не работает завершение потока по нажатию кнопки buton2. Помогите исправить.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
static unsigned __stdcall ThreadFunc(void *s)
int i=5000;     
   {
        int i = *(int *)s;
        Sleep(i);
        return NULL;
        }
 
void __fastcall TForm1::Button1Click(TObject *Sender)
{
        unsigned int ThreadId;
hThread=(HANDLE)_beginthreadex(NULL, 0, ThreadFunc, (void*)&i , 0, &ThreadId);
 
}
 
void __fastcall TForm1::Button2Click(TObject *Sender)
{     CloseHandle(ProcInfo.hThread);
     _endthreadex(NULL);
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.10.2013, 01:18
Ответы с готовыми решениями:

Завершение потока
Необходимо корректно завершить поток. Сейчас код такой class MyThread extends Thread { ...

Завершение потока
Проблема в том что, при закрытии приложения поток остаётся работать, и следовательно при повторном...

Завершение потока
Здравствуйте! Вопрос такой, как сделать так, чтобы поток завершался по условию? Вот например:...

завершение потока
как завершить поток до конца выполнении его работы? делаю так methread.terminated но не...

3
Эксперт С++
8379 / 6140 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
30.10.2013, 01:37 2
А в буквальном смысле "завершить" нельзя так просто.

Можно либо проверять условие в теле функции потока "периодически" либо "грубо" через TerminatedThread()
0
0 / 0 / 2
Регистрация: 20.11.2011
Сообщений: 73
30.10.2013, 01:42  [ТС] 3
не совсем вас понял, скажу что, фишка заключаестя в том что завершить поток надо по нажатию кнопки и через функцию _endthreadex
0
Эксперт С++
8379 / 6140 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
30.10.2013, 02:01 4
Смотри пример от сюда http://msdn.microsoft.com/en-u... 90%29.aspx

Цитата Сообщение от prostreet Посмотреть сообщение
через функцию _endthreadex
эта ф-ция не останавливает поток...

Добавлено через 4 минуты
C++
1
 while( repeat )  <-  продолжение/выход по условию
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.10.2013, 02:01
Помогаю со студенческими работами здесь

Завершение потока
Как можно принудительно завершить поток в другом процессе, не завершая самого процесса? Считается,...

Завершение потока
Как завершить поток из main чтобы все потом нормально было???

Завершение потока
У меня запущен поток: Thread load = new Thread(check); load.Start(); Но если поток...

Завершение потока.
Как принудительно (то бишь моментально) завершить (то бишь с вызовом OnTerminate и освобождением...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru