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

Синхронизация потоков - C++

Восстановить пароль Регистрация
 
Lers
12 / 12 / 3
Регистрация: 27.05.2012
Сообщений: 202
18.12.2012, 19:57     Синхронизация потоков #1
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include <process.h>
#include <stdio.h>
#include <Windows.h>
#include <iostream.h>
#include <conio.h>
using namespace std;  
 
struct ThreadArgs {
    int x;
    explicit ThreadArgs(int x_ = 0): x(x_) {}
};
 
CRITICAL_SECTION cs;
int ch,a[9]={0,1,2,3,4,5,6,7,8};
 
 
void Thread2(void* arg){
     const ThreadArgs *ta = static_cast<const ThreadArgs*>(arg);
     int i;
     for (i=0; i<9; i++)
     {
          while (!TryEnterCriticalSection(&cs));
          cout<< a[i] << " - " << ta->x << endl;
          LeaveCriticalSection( &cs );
     }       
    _endthread();
}
  
int main(){ 
    InitializeCriticalSection( &cs );
    ThreadArgs p1(1);
    _beginthread( Thread2, 0, &p1 );
    ThreadArgs p2(2);
    _beginthread( Thread2, 0, &p2 );
    ThreadArgs p3(3);
    _beginthread( Thread2, 0, &p3 );
    ThreadArgs p4(4);
    _beginthread( Thread2, 0, &p4 );
    ThreadArgs p5(5);
    _beginthread( Thread2, 0, &p5 );
        
    getch();
    return 0;
}
Требуются комменты, пытаюсь разбираться в потоках.
P.S. заранее спасибо.

Добавлено через 22 часа 56 минут
Помогите пожалуйста
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.12.2012, 19:57     Синхронизация потоков
Посмотрите здесь:

C++ Синхронизация
C++ Синхронизация потоков средствами WinAPI.
C++ Синхронизация потоков, события, WinAPI
C++ Синхронизация потоков в c++
C++ Создание и завершение процессов и потоков. Приоритеты выполнения потоков
Синхронизация потоков на семафорах C++
C++ Буферы и синхронизация потоков
Синхронизация потоков - уведомление о событии C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 21:06. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru