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

Проверьте правильность кода

13.12.2013, 19:55. Показов 430. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Задание:
Искусственно создать взаимную блокировку потоков с использованием объектов типа Event и CriticalSection.
Объекты и потоки необходимо создавать из одного приложения.

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
45
46
47
48
49
50
51
52
#include <windows.h>
#include <stdio.h>
 
DWORD res;
DWORD res2;
HANDLE  hThread1;
HANDLE  hThread2;
CRITICAL_SECTION CriticalSection;
DWORD WINAPI thr_proc1(LPVOID lpParameter)
{
    EnterCriticalSection(&CriticalSection);
    printf("potok 1 \n");
    printf("critical zanimaet potok 1 \n");
 
 
    HANDLE ev = CreateEvent(NULL, TRUE, TRUE, L"EV_");
    if (ev == NULL) throw;
    printf(" \n event  hochet zanyat' 1 potok");
    WaitForSingleObject(ev, INFINITE);
    return 1;
}
 
 
DWORD WINAPI thr_proc2(LPVOID lpParameter)
{
    HANDLE ev = CreateEvent(NULL, TRUE, TRUE, L"EV");
    printf("potok 2 \n");
    printf("event zanimaet potok 2 \n");
    if (ev == NULL) throw;
    WaitForSingleObject(ev, INFINITE);
 
 
    printf(" \n critical hochet zanyat' 2 potok");
    EnterCriticalSection(&CriticalSection);
}
 
int main(int argc, char** argv)
{
    hThread1 = CreateThread(NULL, 0, thr_proc1, NULL, 0, NULL);
    hThread2 = CreateThread(NULL, 0, thr_proc2, NULL, 0, NULL);
    
    WaitForSingleObject(hThread1, 1000);
    WaitForSingleObject(hThread2, 1000);
    CloseHandle(hThread1);
    CloseHandle(hThread2);
 
    Sleep(5000);
    
    printf(" \n end");
    //scanf("\n");
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.12.2013, 19:55
Ответы с готовыми решениями:

Проверьте правильность кода
#include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;iostream&gt; int main() { setlocale(LC_ALL,...

Проверьте правильность кода
Здравствуйте. Задали рассчитать площадь треугольника по заданным параметрам: сторонам треугольника...

Метод хорд, проверьте правильность кода
#include &lt;iostream&gt; #include &lt;cmath&gt; double func(double x) { return...

Проверьте, плз, правильность написания кода
#include &lt;iostream.h&gt; #include &lt;iosmainp.h&gt; // в этом файле описаны манипуляторы при работе с...

0
13.12.2013, 19:55
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.12.2013, 19:55
Помогаю со студенческими работами здесь

Проверьте правильность написания кода и коментарии
Задача: Написать программу которая принимает в качестве аргумента имя файла f с русским текстом и...

Проверьте правильность кода. Почему выдаёт ошибку?
Написать программу, которая считывает текст из файла, находит самое длинное слово и определяет,...

Проверьте правильность кода (обработка значений матрицы)
Задание ниже: 1) Вычислить матрицу по формуле....

проверьте на правильность
Нужно удвоить нечётные элементы (количество строк m - 4, а столбцов n - 3) #include...

проверьте на правильность
Вычислить значения функции у=4х3-2х2+5 для значений х, изменяющихся от -3 до 1, с шагом 0.1....

Проверьте правильность
Структурная схема алгоритма (метод вставки) http://i032.***********/0912/0c/f5e0e7e1959c.jpg...


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

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

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