| |
|
|
GDL | Hallo Profaner,
ist es möglich,dass zwei Programme gleichzeitig auf eine Datei zugreifen können.Wenn nicht,wie frage ich ab,ob gerade ein Zugriff stattfindet? Danke.
Servus Georg |
|
|
| |
|
|
|
Rolf Koch | Hi Georg,
Abfrage auf Möglichkeit besteht über %IORESULT Oder über Ifs lecker file.pcu, zum Beispiel: fopen(s$,mode%) liefert Dir dann bei ungültigem Zugriff das Handle 0 zurück, also noch einfacher - halt direkt nach Öffnen.
Rolf |
|
|
| |
|
|
|
| Ja , gleichzeitiger Zugriff ist möglich - über Filemapping. Ich habe so etwas mal mit Speicherbereichen gemacht - das ist eigentlich das selbe. Nächste Woche kommt die Sache hier in die API Library - bin zur Zeit wieder in der Nachtschicht... |
|
|
| |
|
|
|
GDL | Danke euch beiden,
muss notkiste noch weiter installieren (kein Profan z.Z.drauf),probiers aber gleich aus und melde mich wieder.
Servus Georg |
|
|
| |
|
|
|
| Gleichzeitiger Zugriff auf Dateien geht ohne Weiteres.
Lediglich das gleichzeitige Schreiben in ein und die Selbe Datei kann Windows nicht.
Du kannst aber ohne Weiteres mit Filemode 0 eine Datei so oft Du möchtest zu Lesen öffnen - und wild drinn rumlesen.
Salve, iF |
|
|
| |
|
|
|
GDL | hi if, kommt deine thread.pcu zum Einsatz.Eine Anwendung schreibt die andere liest aus.Muss also die andere am Lesen hindern,bei einem Schreibvorgang. In diesem Fall geht schreiben vor lesen.
Servus Georg |
|
|
| |
|
|
|
| Naja fast - beide mit Filemode 2 öffnen, und wenn ein Öffnen einen IOResult verursacht dann warten & nochmal-probieren.
Salve, iF |
|
|
| |
|
|
|
| Hallo Georg...
Dürfte, wie gesagt, in dieser Art über Filemapping gehen. Habe das für Speicherbereiche schon realisiert. Ein Programm ließt aus einem Speicherbereich, in den ein anders Programm schreibt. Files sind in dieser Beziehung eigentlich das gleiche wie Speicher... |
|
|
| |
|
|
|
GDL | Hallo Andreas,
könntest bitte dies näher erklären,danke.
Servus Georg |
|
|
| |
|
|
|
| Hallo Georg...
Das werde ich tun - wie gesagt aber erst nach meiner Nachtschicht. Muß noch einen passenden Quelltext dazu schreiben und etwas in der API wühlen. Habe bislang nur was für den Speicherzugriff da... |
|
|
| |
|
|
|
| Hallo Georg...
Auf was für Dateien willst du genau zugreifen und was genau schreiben? Da INIS gecached werden, dürfte dies eigentlich die einfachste Art sein, um gleich von mehreren Orten aus in eine Datei schreiben (und auch aus einer lesen) zu können: KompilierenMarkierenSeparieren |
|
|
| |
|
|
|
GDL | Hallo Andreas, 1.Grund sind .dbf Dateien mit ca 65000 Sätzen pro .dbf. Muss den Befehl on comX gosub ersetzen,da Profan keine Interrupterkennung besitzt. x=Nummer der RS 232. Bei PowerBasic oder Quickbasic war dies so gelöst,dass bei On COM gosub nach jedem Befehl nachgesehen wird,ob das Empfangsflag gesetzt ist. Ausserdem kam bei Powerbasic bei folgendem keine Fehlermeldung: open for random #1,.....
close #1 close #1 Das heist,bei einem Anliegendem Signal,wurde im Unterprogram als erstes ein close #1 geschrieben,egal ob vorher geöffnet oder nicht.Und durch die Tatsache,das nach jedem Befehl im Hauptprogramm verzweigt wurde,kam ein gleichzeitiger Zugriff nicht zusstande.
2.Grund Jetzt möchte ich dies mit der threat.pcu angehen.Da die aber parallel zum Hauptprogramm läuft,muss ein Zugriff erst abgefragt werden,der aber fast nicht zustande kommt,da das Hauptprogramm ständig ausliest.
Da dies ganze aber äusserst Zeitkritisch ist,kann mit Programmpausen nicht gearbeitet werden.Die Zugriffe bestimmen die äußeren Umstände und nicht das Programm.
Drum wäre ein zeitgleicher Zugriff ideal,da dann weder die Einlese noch die Ausgaberoutine unterbrochen werden muss.
Servus Georg |
|
|
| |
|
|