Salve,
ho realizzato una applicazione server multithreading.
Il thread principale crea dei thread a cui passa dei puntatori a variabili.Ora se il thread "figlio" modifica tale variabile tramite questo puntatore, come posso far si che il thread padre leggendo eventualmente il valore di tale variabile trovi l'effettiva modifica?
Ad esempio:
-Thread 1 crea la variabile int k e la inizializza a 0;
-Crea Thread 2 passandogli come attributo un puntatore a k;
-Thread 2 incrementa k;
-Thread 1 legge k e trova k=1.
(non mi voglio che thread 1 rimanga in attesa o cose del genere, ma solo che se k è stato modificato e lui lo va a leggere trova il valore modificato)
Sotto windows avevo trovato le funzioni InterlockedIncrement e InterlockedDecrement (dichiarando le variabili in questione LONG volatile)che facevano proprio al caso mio, ma sotto linux cosa posso utilizzare di simile?
Ringrazio in anticipo!
Saluti!!