sem_get() nicht - Alternativen?

Hallo miteinander,

in meinem PHP-Manual ist die Funktion sem_get() [sowie sem_acquire() und sem_release() natürlich] beschrieben, und ich habe mich gefreut, dass es sowas in PHP auch gibt, genau das brauche ich für meine Zwecke.

Beim ersten Test dann die Ernüchterung: "Call to undefined function sem_get()".
Nach einigem Grübeln kam mir die Idee, klar, ich arbeite unter Windows (ich benutze XAMPP zum Entwickeln), und da funktioniert natürlich keine Unix-Systemfunktion, irgendwie klar.

Allerdings läuft das Ganze auch in meinem Webspace nicht, von dem ich weiß, dass er unter UNIX gehostet ist.

Frage 1: Kann sich jemand mögliche Ursachen vorstellen bzw. was kann ich tun, dass es zumindest unter UNIX auch tatsächlich funktioniert?

Frage 2: Hat jemand anders eine Idee, wie ich mit PHP den gleichzeitigen Zugriff auf bestimmte Ressourcen unterbinden kann? Am besten natürlich etwas, was plattformunabhängig arbeitet?

Ich habe zwar mal angefangen, mir selber einen Synchronisationsmechanismus mit Sperrdateien zusammenzubasteln (wenn eine Datei eines bestimmten Namens existiert ist gesperrt u.ä.), aber das ist ja auch nicht wirklich sicher, denn wenn die Datei zum Zeitpunkt der Prüfung gerade noch nicht existiert, und dann aber in der Zwischenzeit angelegt wird - dann hab ich ja wieder den Salat, also sprich, es ist halt einfach nicht wirklich sicher.

Hoffe mal, da weiß jemand weiter...

Thanx und greez aus den Tropen

henning-malaysia
 
Diese Funktionen stehen nur dann zur Verfügung, wenn PHP das Semaphor-Modul geladen hat, ansonsten erscheint die von dir erwähnte Fehlermeldung. Du könntest deinen Hoster mal ganz lieb fragen, ob sie dieses Modul für dich einbinden. Chancen auf Erfolg sehe ich da aber leider nicht, da dieses sehr systemnahe Funktionen zur Verfügung stellt.
 
Re: sem_get() nicht - Alternativen? - weiß keiner was gutes?

Hm, diese Antwort hatte ich befürchtet :(

Hat jemand eine Idee, wie ich sonst noch unter PHP Zugriffe synchronisieren kann? Ich möchte verhindern, dass zwei Nutzer (im passwortgeschützten Adminbereich meiner Seite) gleichzeitig z.B. das Texteditierwerkzeug verwenden.

Es freut sich schon auf tolle Vorschläge :-)

henning-malaysia
 
Zurück