Witam
Funkcje równolegle sumuje wartości do zmiennej j co jeden i zwracają wartość j.
Niestety w tym czasie występuję błąd naruszenia pamięci.
Jestem chętny na wszystkie sugestie.
#include <iostream>
#include <stdio.h>
#include <pthread.h>
#include <unistd.h>
using namespace std;
void* fun(void *nr)
{
int j = 0;
for(int i = 0; i < 6000; ++i)
{
j += 1;
}
return (void *)j;
}
void* fun2(void *nr)
{
int j = 0;
for(int i = 0; i < 6000; ++i)
{
j += 1;
}
return (void *)j;
}
int main()
{
pthread_t w1, w2;
long wyn1, wyn2;
long wynik = 0;
pthread_join(w1, 0);
wyn1 =(long) pthread_create(&w1, 0, fun, 0);
pthread_join(w2, 0);
wyn2 =(long) pthread_create(&w2, 0, fun2, 0);
wynik = wyn1 + wyn2;
cout << "Wynik zwrócony przez watki wynosi " << wynik << endl;
return 0;
}
Pozdrawiam
Adam