Advertisement
Guest User

Untitled

a guest
Jun 27th, 2017
47
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.08 KB | None | 0 0
  1. /* Prevodjenje:
  2. /* gcc lab3a1.c random_prime.c -lm -o lab3a1 */
  3. #include <stdio.h>
  4. #include <stdlib.h>
  5. #include <sys/types.h>
  6. #include <sys/wait.h>
  7. #include <unistd.h>
  8. #include <stdarg.h>
  9. #include <sys/stat.h>
  10. #include <fcntl.h>
  11. #include <pthread.h>
  12.  
  13. extern int random_prime();
  14.  
  15. void *generiranje(void *id){
  16. printf("doso");
  17. int *p;
  18. int prim;
  19.  
  20. p = (int*) id;
  21.  
  22. prim = random_prime();
  23. while(p[0]>0){
  24.  
  25. p[0]--;
  26. printf("dretva tid=%d, broj=%d\n", p[1], prim);
  27. sleep(1);
  28. }
  29. printf("dretva tid=%d zavrsila!\n",p[1]);
  30. }
  31.  
  32. int main(int argc, char **argv){
  33.  
  34. int N,M,i,s[2];
  35.  
  36. N = atoi(argv[1]); // broj dretvi
  37. M = atoi(argv[2]); // broj sekundi
  38.  
  39. s[0] = M;
  40. pthread_t thr_id[N];
  41.  
  42. /* pokretanje dretvi */
  43. for(i=0; i<N; i++){
  44. s[1] = i;
  45. if ( pthread_create ( &thr_id[i], NULL, generiranje, s ) != 0 ) {
  46.  
  47. printf ( "Greska pri stvaranju dretve!\n" );
  48. exit (1);
  49. }
  50. }
  51.  
  52.  
  53.  
  54.  
  55. return 0;
  56. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement