Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Приложение с потоками. (http://forum.oszone.net/showthread.php?t=204868)

Noglick 15-04-2011 16:08 1659083

Приложение с потоками.
 
Товарищи, если кто-нибудь знает, как это отлажено сделать, напишите пожалуйста.

"Создать приложение, запускающее четыре дочерних потока. Каждый поток вы-
полняет вывод сообщения о том, что он создан, а затем выводит цифры своего
порядкового номера. Изменить приоритеты потоков так, чтобы их приоритеты
увеличивались по порядку их создания (первый поток – наименьший приоритет,
четвертый – наибольший). Вывести сведения о приоритетах потоков и пооче-
редно завершить их работу. "

Hilaly 19-04-2011 18:43 1661872

я знаю =))

Потоки создаются с помощью функции
HANDLE WINAPI CreateThread(
__in_opt LPSECURITY_ATTRIBUTES lpThreadAttributes,
__in SIZE_T dwStackSize,
__in LPTHREAD_START_ROUTINE lpStartAddress,
__in_opt LPVOID lpParameter,
__in DWORD dwCreationFlags,
__out_opt LPDWORD lpThreadId
);
Парметр lpStartAddress это ф-я которая будет выполняться в созданном потоке.

Приоритет потока устанавливается с помощью
BOOL WINAPI SetThreadPriority(
__in HANDLE hThread,
__in int nPriority
);
здесь hThread -> дескриптор возвращенный предыдущей ф-ей
А получить его можно при помощи
int WINAPI GetThreadPriority(
__in HANDLE hThread
);


Потоки выполняются до выполнения одного из следующих условий
Поток вызывает ExitThread
любой поток процесса вызывает ExitProcess
ф-я потока возвращает значение
любой поток вызывает TerminateThread с параметром - дескриптором данного потока
любой поток вызывает TerminateProcess с параметром - дескриптором процесса


Время: 10:20.

Время: 10:20.
© OSzone.net 2001-