Hallo erstmal im Forum!
Ich bin neu hier und habe erst vor kurzem angefangen auf Linux zu programmieren - und schon stehe ich vor einem Problem.
Folgendes ist los:
In einem Ordner "bilder" sind ca. 1000 Bilder hinterlegt. Nun habe ich ein Programm geschrieben welches bei jedem Aufruf (von einer Anderen Anwendung) ein anderes Bild in diesem Ordner per Symlink verlinkt und diesen Link an die Anwednung zurückgibt. Soweit so gut.
Jetzt ist es aber so, dass mein Programm von anderen Anwendungen bis zu 21 Mal zur gleichen Zeit aufgerufen werden kann. D.h. jetzt kann es vorkommen, dass bei diesen gleichzeitigen Aufrufen 2 gleiche Bilder verlinkt werden, was nicht vorkommen darf...
Ich habe schon mit einer Art text-basiereden Datenbank probiert, aber da hatte ich das Problem mit dem Locken der Text-Datei zu kämpfen. D.h. bei jedem Aufruf wird die txt-Datei kurzzeitig gesperrt, dann ändert das Programm die Datei und entsperrt sie wieder. Die anderen Prozesse warten quasi bis die Datei entsperrt wurde. Das ganze hat aber nicht so richtig funktioniert...
Hat jemand von euch eine Idee wie man ein solches Problem lösen kann? Da es sich um ein Embedded-Linux handelt kann ich aus Speicherplatzgründen kein mySQL o.ä. installieren..
Danke schon mal im Voraus für eure Ideen und Hilfe!
Mfg
holly123
Ich bin neu hier und habe erst vor kurzem angefangen auf Linux zu programmieren - und schon stehe ich vor einem Problem.
Folgendes ist los:
In einem Ordner "bilder" sind ca. 1000 Bilder hinterlegt. Nun habe ich ein Programm geschrieben welches bei jedem Aufruf (von einer Anderen Anwendung) ein anderes Bild in diesem Ordner per Symlink verlinkt und diesen Link an die Anwednung zurückgibt. Soweit so gut.
Jetzt ist es aber so, dass mein Programm von anderen Anwendungen bis zu 21 Mal zur gleichen Zeit aufgerufen werden kann. D.h. jetzt kann es vorkommen, dass bei diesen gleichzeitigen Aufrufen 2 gleiche Bilder verlinkt werden, was nicht vorkommen darf...
Ich habe schon mit einer Art text-basiereden Datenbank probiert, aber da hatte ich das Problem mit dem Locken der Text-Datei zu kämpfen. D.h. bei jedem Aufruf wird die txt-Datei kurzzeitig gesperrt, dann ändert das Programm die Datei und entsperrt sie wieder. Die anderen Prozesse warten quasi bis die Datei entsperrt wurde. Das ganze hat aber nicht so richtig funktioniert...
Hat jemand von euch eine Idee wie man ein solches Problem lösen kann? Da es sich um ein Embedded-Linux handelt kann ich aus Speicherplatzgründen kein mySQL o.ä. installieren..
Danke schon mal im Voraus für eure Ideen und Hilfe!
Mfg
holly123