PDA

Visualizza la versione completa : Classe thread safe


tulipan
20-08-2018, 09:47
Buongiorno,
sto leggendo diversa documentazione per capire cosa vuol dire che una classe sia Thread safe, senza nessun successo.....

Potreste gentilmente aiutarmi?

Thanks
Tulipan

URANIO
20-08-2018, 11:42
Significa che la classe si comporta correttamente in una situazione multithread.
Ad esempio mettiamo che la classe accede ad una risorsa condivisa, deve prima bloccarne l'accesso ad altre prima di poterci accedere.

MItaly
20-08-2018, 18:56
Di norma significa che i suoi metodi possono essere invocati in maniera concorrente da più thread.

RedBlueKK
18-09-2018, 21:45
Di norma significa che i suoi metodi possono essere invocati in maniera concorrente da più thread.

Io penso che sia l'opposto, una classe, ad esempio un Singleton Thread Safe vuol dire che per evitare che più thread possono istanziare il singleton, allora si utilizza un semaforo Mutex-Lock.

MItaly
19-09-2018, 10:16
... che è esattamente un caso specifico di ciò che ho detto. Puoi invocare la funzione che ti restituisce il singleton da più thread senza paura - internamente è sincronizzato in modo da funzionare correttamente in caso di invocazione concorrente (= un solo thread lo istanzia, l'altro si mette in coda ad aspettare che l'altro abbia finito di costruirlo prima di entrare).

Loading