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

Реализация операций в дочернем потоке - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Кликер http://www.cyberforum.ru/cpp-beginners/thread167090.html
помогите пожалуйста перевести код на с++ using System; using System.Windows.Forms; namespace WindowsFormsApplication1 { public partial class Form1 : Form { private int _next_btn, _score; private Timer _t; public Form1()
C++ Как зделать чтоб программа удалила сама себя Привет всем. У меня собственно такой вопрос: Как зделать чтоб программа удалила сама себя? Я имею в виду, чтоб после запуска, приложение выполнило некие действия, а по завершении работы удалило свой .exe с которого запускалось. http://www.cyberforum.ru/cpp-beginners/thread167088.html
C++ формирование матрицы связности по списку по контактам
нужно сформировать матрицу связности, что бы потом нарисовать полный граф. функция неправильно работает...когда рисует граф, то не все рисуется... в чем ошибка?? и как можно по другому сделать?? ______________________________________________________________________ вот процедура: int **Matr(spisok *first, int ke, int kc) {
C++ Triangle
Given 3 positive real numbers x, y, z. Output "YES" if it is possible to construct a triangle with side lengths x, y, z. Output "NO" otherwise. Example: Input: 3 4 5 Output YES Example: Input:
C++ Teacher's Day http://www.cyberforum.ru/cpp-beginners/thread167069.html
Teacher’s day is celebrated each year on the first Sunday of the October. Given natural number n, that represents the number of the year. Output the date of the Teacher’s day of that year. Example: Input: 2010 Output 3
C++ Correct Date Даны три натуральных числа: a, b, c, которые представляют день, месяц и год некоторой даты. Вывести "yes" если данная дата корректна и "no" в другом случае. Например: Input: 32 1 1991 Ouput: no Given three natural numbers a, b, c which represent the day, month and year of some date. Output “yes" if the given date is correct and “no” otherwise. Example: подробнее

Показать сообщение отдельно
Vexel
 Аватар для Vexel
12 / 12 / 1
Регистрация: 18.10.2009
Сообщений: 159
19.09.2010, 16:28     Реализация операций в дочернем потоке
Помогите пожалуйста исправить ошибку, в общем нужно ввод числа N и вывод S (т.е. суммы) реализовать в дочернем потоке. Вот листинг:
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
#include <iostream>
#include <pthread.h>
#include <semaphore.h>
#include <conio.h>
int S; 
int S1;
int N;
int i;
sem_t;
sem_inp;
sem_out;
void * func_first(void * args)
{
int S1=0;
std::cout <<"vvedite N";
std::cin <<N;
sem_post(&sem_inp);
for (i=(N/2)+1; i <=N; i++) 
{
S1+=i; 
}
sem_wait (&sem_output);
S=S+S1;
std::cout<<S;
}
int main(void)
{
S=0;
sem_init(&sem_inp,0,0);
sem_init(&sem_out,0,0);
sem_wait(&sem_inp);
pthread_t first; 
pthread_create(&first,NULL,func_first,NULL); 
for (i=1; i<=N/2; i++) 
{
S+=i; 
}
pthread_join(first,NULL); 
sem_post(&sem_out);
getch();
return 0;
}
Добавлено через 9 часов 47 минут
Уточняю задание: изначально нужно было написать программу, в которой два потока: дочерний и главный вычисляют сумму от i до N. N суммы и вывод результата нужно было указать в главном потоке. Это я сделал! Теперь из этой программы нужно реализовать ввод суммы и вывод результата в дочернем потоке! Тут нужно использовать семафоры. Вот это у меня как раз не выходит. Посмотрите пожалуйста листинг и скажите что и где нужно исправить.

Добавлено через 2 часа 0 минут
Люди, вам что подсказать тяжело в чем ошибка конкретно ? Я же не прошу тут все с нуля делать.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 04:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru