Форум программистов, компьютерный форум, киберфорум
Наши страницы

Потоки. Event. Задача про обедающих философов. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Контрольная http://www.cyberforum.ru/cpp-beginners/thread549459.html
Помогите с контрольной пожалуйста Задание
C++ Итератор для списка #include <iostream> using namespace std; template <class T> class Link { public: T value; Link *nextLink; Link( T v, Link<T>* n ) : value ( v ), nextLink ( n ) {} }; http://www.cyberforum.ru/cpp-beginners/thread549447.html
Запуск программы с удаленного сервера C++
Допустим мы запускаем у себя программу, лежащюю на удаленном сервере(не наша подсеть) и в процессе своей работы программа обращается к IP 10.1.10.1 Вопрос: программа обратится к этому адресу в...
C++ Делаю сапёр. что тут не так????
#include<iostream.h> #include<dos.h> #include<time.h> #include<stdio.h> #include<stdlib.h> #include<conio.h> int main (void) {
C++ Не могу найти ошибку http://www.cyberforum.ru/cpp-beginners/thread549429.html
Добрый день. Есть код #include <stdio.h> #include <conio.h> #include <math.h> struct tbook {
C++ Итерационный метод удаления бинарного дерева Есть бинарное дерево поиска нужно создать итерационный метод удаления дерева. Вот есть функция удаления дерева но при удалении происходит ошибка вот такая: Необработанное исключение в "0x64bd12b4" в... подробнее

Показать сообщение отдельно
kravam
быдлокодер
1700 / 887 / 45
Регистрация: 04.06.2008
Сообщений: 5,498
16.04.2012, 22:27
Ну вообще для демонстрации программы шаг необязательно и даже плохо делать равным двум. Это многопоточность. Потому что можно увидеть если каждый философ ровно два раза что-то там сделает? Ничего
НАпиши вот так:
C++
1
for(int i = 0; i < 1; )
И очень скоро твоя программа подвиснет. Для чистоты эксперимента можешь сделать шаг равным какому-то реальному числу. В общем, программа зависла у меня при step== 5

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
Philosopher[0] want to eat. L[0] n r[1] forks - success.
begin Eating[0].
Philosopher[2] want to eat. L[2] n r[3] forks - success.
begin Eating[2].
Philosopher[1] want to eat. L[1] fork - failed.
Philosopher[4] want to eat. L[4] n r[5] forks - success.
begin Eating[4].
Philosopher[3] want to eat. L[3] fork - failed.
end   Eating[0].
end   Eating[2].
Philosopher[1] thinking.
Philosopher[3] thinking.
end   Eating[4].
Philosopher[0] thinking.
Philosopher[2] thinking.
Philosopher[4] thinking.
Philosopher[2] want to eat. L[2] n r[3] forks - success.
begin Eating[2].
Philosopher[1] want to eat. R[2] fork - failed.
end   Eating[2].
Philosopher[1] thinking.
Philosopher[2] thinking.
Philosopher[1] want to eat. L[1] n r[2] forks - success.
begin Eating[1].
end   Eating[1].
Philosopher[1] thinking.
Как видишь, ни одна из функций потока и не думает заканчиваться. Просто подвисла прога и всё тут.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru