Mnohonasobne pristupy k suboru cez PHP (semafor)

Programovacie jazyky, rady, poradňa...
Shakal
Light Star
Light Star
Používateľov profilový obrázok
Príspevky: 206
Registrovaný: 31 jan 2006, 18:54

Mnohonasobne pristupy k suboru cez PHP (semafor)

Príspevok od používateľa Shakal »

Zdravim.
Predstavte si nieco taketo:

Kód: Vybrať všetko

$file=Fopen("subor.txt","a");  // Otvorit subor pre zapis - append
if (!FPutS("bla bla bla bla",$file)) echo 'Something is wrong!';
FClose($file);
Otazka.
Co sa stane, ak takyto PHP skript spusti hned niekolko desiatok uzivatelov v rovnakom case a momente?

Ma PHP nejaky "semafor", ktory requesty usporiada do fronty a vykona ich postupne alebo to v tom jednom momente vykona len jednemu a ostatnych "odpalkuje" nejakou chybovou hlaskou?
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

nestará sa o správu súborov (tak ako aj správu procesov, procesora, primárnej pamäte, IO, a networking) náhodou operačný systém? Php s tým podľa mňa nič nemá.
Shakal
Light Star
Light Star
Používateľov profilový obrázok
Príspevky: 206
Registrovaný: 31 jan 2006, 18:54

Príspevok od používateľa Shakal »

hmmm. to ma nenapadlo.
Ja len, ze na MySQL je napriklad mechanizmus, ktory si tieto veci riesi sam a nespolieha sa na system.
turtlak69
Guru
Guru
Príspevky: 2896
Registrovaný: 10 máj 2007, 15:58
Bydlisko: /dev/null

Príspevok od používateľa turtlak69 »

ako vravi audiotrack, lock manazment ma v tomto pripade na starosti samotny OS. databaza si toto spravuje sama, pretoze data su ulozene v data fajloch, ktore su locknute pre databazu a ta k nim pristupuje podla potreby. dufam, ze sa nemylim.
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

mysql si to nerieši sám, správu transakcií rieši srbd. MySQL tak ako aj php sú iba jazyky.
Mek
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4661
Registrovaný: 23 mar 2005, 23:00
Bydlisko: ZA <-> TN
Kontaktovať používateľa:

Príspevok od používateľa Mek »

Ja som raz mal problem, ked som pocas behu jedneho skriptu potreboval spustit druhy skript a oba vyuzivali sessions. Napokon som to spravil inak, lebo ten druhy skript stale cakal, kym sa dokonci ten prvy, co nenastalo nikdy (bol volany ajax-om a z podstaty tej aplikacie by to inak spravit neslo).
Napísať odpoveď