PDA

View Full Version : [C] Server multithread


Ponch84
11-09-2009, 17:30
Devo realizzare un elenco telefonico gestito da un server. I client possono aggiungere un record all'elenco o solo trovare un record all'interno dell'elenco.
Dovrei trasformare questo server multiprocesso in uno multithread. In pratica deve accettare pių client senza aspettare che il primo client connesso si disconnetta. Qualcuno č in grado di modificarlo? Inoltre ho anche un dubbio sulla gestione del file: il server vede sul file Rubrica.txt se č presente il nomimėnativo cercato e deve gestire le scritture e le letture di pių client. Devo creare sempre il semaforo anche se uso il multithread?

nuovoUtente86
11-09-2009, 18:16
si devi utilizzare strumenti di sincronizzazione sul file. Devi creare una sorta di ReadWriteLock: se nessuno sta modificando tutti posso leggere, viceversa se vi č una modifica in corso nessuno sia in lettura che in scrittura deve accedervi.
Hai pensato anche a suddividere in pių comporti la rubrica. Se un utente aggiunge il numero di Mario Rossi, ha senso bloccare un utente che effettui una ricerca sotto il comparto "R" ad esempio ma ne ha di meno impedire a qualcuno di cercare il signor Bianchi sotto la "B"

Ponch84
12-09-2009, 15:57
Ho modificato il file implementando i thread. Volevo sapere se poteva andare bene cosė oppure devo modificare il semaforo? (perchč quando compilo mi dā "undefined reference to receiveThread"? :( )