![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 23.04.2011
Сообщений: 2
|
![]()
всем доброго времени суток!!!Ребята,помогите пожалуйста решить проблему вот по этой проге:
using namespace std; HANDLE hMutex; int a=2; int b=3; int c; int r; void Thread( void* pParams ) { int y=0; int i, num = 0; while ( TRUE ) { WaitForSingleObject( hMutex, INFINITE ); while(y!=100) { for(int i=0;i<30;i++){a++;c=a+b;; printf("II a %d b %d c %d\n", a, b,c); y++;r++; } ReleaseMutex( hMutex ); } //ReleaseMutex( hMutex ); exit(0); } } } int main( void ) {int y=0; hMutex = CreateMutex( NULL, FALSE, NULL ); _beginthread( Thread, 0, NULL ); Sleep(30); while( TRUE ) { WaitForSingleObject( hMutex, INFINITE ); while(y!=100) { b++;c=b+a; printf("I a %d b %d c %d\n",a, b,c ); y++; } ReleaseMutex( hMutex ); } return 0; } задача состоит в том,чтобы через каждые 30 итераций потоки менялись местами.т.е. вначале работает 30 итераций первый поток,поток 30 второй,затем опять 30 первый и т.д. Последний раз редактировалось Любава; 24.10.2011 в 18:18. |
![]() |
![]() |