02. februar 2006 - 14:55Der er
5 kommentarer og 1 løsning
skrive, låse og åbne fil
Hej.
Jeg har en fil, kaldet share.txt, som skal tilgås af 2 processer. Hver proces skal tilgå share.txt, ved først at låse filen, skrive i den og så åbne den igen. Når share.txt er åben igen, kan den anden proces kan gøre nøjagtig det samme. Når proces2 så er færdig, starter proces1 forfra osv.
Ovenstående, skal køre i eksempelvis 100 gange.
Det som skal skrives i filen, er informationer fra en struct, der indeholder 2 variabler (int, char).
Jeg har forsøgt at løse det med nedenstående kode, men er gået lidt i stå.
normalt vil fopen med w laase filen saa du enten skal aabne og lukke filen hver gang du skal bruge den eller skal bruge specielle options
jeg kender ikke pthread_mutex_lock specielt godt, men jeg ville tro at den kun laaste for traade inden for samme process - ikke for forskellige processer
jeg forstaar ikke at du baade bruger pthreads og fork
Jeg kan ikke umiddelbart se udfra koden/beskrivelsen, hvad de to processer skal, men det ligner to stumper program, der afventer hinandens data. Det kunne gøre vha. pipes eller sockets, så kan de to processer også køre på to seperate maskiner.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.