![]() |
Zitat:
Du kannst diese Funktionalität im Grunde aber auch weglassen, nur bist dann halt vor multiplen Zugriffen nicht geschützt. lg paux |
Zitat:
Ich werde diese Funktion aber Sicherheitshalber neu reinkompilieren, weil den Source Code möchte ich nicht ändern. :) Danke für die rasche Hilfe! |
Zitat:
Semaphore dienen dazu, den Zugriff mehrere prozesse auf eine Ressource (File, Shared Memory) zu synchronisieren. Mah, lernt die Jugend heutzutage gar nichts mehr? :confused: :heul: http://de.wikipedia.org/wiki/Semaphore_(Programmierung) |
Who cares?
Aber dann hat sich der liebe paux auch geirrt. Zitat:
|
Was gemacht wird mit einem Semaphor ist einfach: Systemprogrammierung. Rund um den Einsatz eines Semaphors spannt sich ein Verwaltungsprogramm, z.B. ein Spooler (Druckauftragsabarbeitungsprogramm).
Wenn Du selbst Semaphore benutzt, betätigst Du Dich also als Systemprogrammierer - nicht zu verwechseln mit Assemblerprogrammierer. Du musst also Routinen schaffen, die der Semaphorgesetzmäßigkeit des Verkehrsregelns nachgelagert sind, also Straßen (wie für Autos), Garagen (wie für Autos) etc., etc. Semaphore sind also die Verkehrsampeln und Verkehrsregeln zugleich durch Constraints (also Zusammenhänge) die mit den Semaphoren paarweise auftreten. Es gibt zwei Arten von Semaphoren: Den Mutex (mutual exclusive) und dem alternierenden Semaphor mit Hilfsmittel Warteschlange, der Prozessumreihungen durchführt, das was in Windows und Linux usw. die Grundlage für Prozessverwaltung darstellt - dem "präemptiven Multitasking" ... im Gegensatz zu kooperativem Multitasking wie es Windows 3.11 darstellt. Es musste in Windows 3.11 unbedingt die gesamte Windows Funktion verlassen werden UND eine neue Windows 3.11 API Funktion (außerdem noch alles in 16bit Adressraum gehalten) aufgerufen werden, bevor ein anderes Programm weiterarbeiten durfte bzw. konnte, weil erst dann festgestellt wurde durch Windows 3.11, daß die Zeitspanne für diesen Prozess bereits verkonsumiert wurde. Mutual heisst 'beiderseitig', exclusive heißt 'ausschließlich'. Was das ganze tatsächlich bedeutet ist: Stillschweigendes Sperren oder Binärer Vorrangszugriff. D.h. ein Semaphor dient der Kapselung von Ressourcezugriffen und damit dem Sicherstellen von nachvollziehbaren Systemzuständen, nicht jedoch Applikationszuständen, dafür sind wiederum file locks und memory locks in erster Linie und eben nicht Semaphore zuständig. |
@eAnic: Die Semaphore beschränken in meinem Script die gleichzeitigen Zugriffe auf höchstens 20 Stück. Das vermeidet, daß der Server bei allzu gierigen Spidern in die Knie geht.
lg |
So, ich hab nun php neu kompiliert und das script funktioniert nun wunderbar.
Vielen Dank für eure Hilfe! |
| Alle Zeitangaben in WEZ +2. Es ist jetzt 12:09 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag