Visualizzazione dei risultati da 1 a 3 su 3

Discussione: [c] semafori

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    1,258

    [c] semafori

    Ciao a tutti, ho studiato la teoria dei semafori, nonostante questo non avendo visto un esempio, ho difficoltà a fare un programmino che acceda a una sezione del codice un processo alla volta, qualcuno mi può dare delle dritte? grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    1,258
    ho fatto questo programma:
    codice:
    #include <sys/types.h>
    #include <sys/ipc.h>
    #include <sys/sem.h>
    
    
    #include <stdlib.h>
    #include <stdio.h>
    
    #define KEY 1901 
    
    
    main()
    {
    
    int semid = semget(KEY, 2, IPC_CREAT | 0600);
    semctl(semid, 0, SETVAL, 1);
    
    struct sembuf cmd={0,-2,0};
    semop(semid, &cmd,1); 
    
    struct sembuf cmd2={0,1,0};
    semop(semid, &cmd2,1);
    
    int val = semctl(semid, 0, GETVAL, NULL);
    printf("valore del semaforo in posizione 0: %d \n", val);
    
    }
    ma una volta che il processo è sospeso che si fa per risvegliarlo? non mi è tanto chiaro..

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    1,258
    sto diventando pazzo, mi rispondo da solo! ^_^ Dovevo fare il risveglio da un altro processo...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.