Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <pthread.h>
- #include <stdio.h>
- #include <stdlib.h>
- #include <unistd.h>
- void *kwadrat(void *arg){
- int liczba = *((int *)arg);
- int suma = liczba * liczba;
- pthread_exit((void *)suma);
- }
- int main(int argc, char *argv[]) {
- pthread_t watki[argc];
- void *kwadrat_wynik;
- int suma=0;
- for(int i=0; i < argc-1; i++){
- int liczba = atoi(argv[i+1]);
- pthread_create( &watki[i], NULL, kwadrat, (void *)&liczba);
- sleep(0.1);
- }
- for(int i=0; i < argc-1; i++){
- kwadrat_wynik=0;
- pthread_join(watki[i], (void **)&kwadrat_wynik);
- suma += (int)kwadrat_wynik;
- printf("%d:%ld:%d:%s:%d\n",i, watki[i] ,getpid(), argv[i+1], (int)kwadrat_wynik);
- }
- printf("%s:%ld:%d:%d\n","Watek_glowny", pthread_self() ,getpid(), suma);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment