Laden...

fileWatcher Problem "kopiervogang abwarten"

Erstellt von elron vor 16 Jahren Letzter Beitrag vor 16 Jahren 1.552 Views
E
elron Themenstarter:in
171 Beiträge seit 2004
vor 16 Jahren
fileWatcher Problem "kopiervogang abwarten"

Wenn ich einen fileWatcher benutze, und ich in das zu überwachende directory dateien hinein kopieren (pro file 22 mb), habe ich ein problem.

Methods werden absofort ausgeführt und auf die files angewendet.
nur muss ich checken das erst wenn der kopiervorgang fertig ist, erst dann der nachfolgenden code ausgeführt wird, bekomme sonst immer ein exception.

kann mir eine von euch helfen bzw. eine weg aufzeigen ?

vorab dankeeee..

gruß,
elron

738 Beiträge seit 2007
vor 16 Jahren

vielleicht:
wenn der event ausgelöst wird: filegröße auslesen bestimmten zeitraum warten (1 sekunde z. bsp.) filegröße nochmal auslesen -> wenn gleich: file wird nicht mehr verändert

oder
schreibzugriff probieren, und aus der exception schließen, dass das file blockiert ist, also z. bsp. gerade erst erstellt wird.

beides ungetestet und nur so spontane einfälle

E
elron Themenstarter:in
171 Beiträge seit 2004
vor 16 Jahren

jo das wäre ein ansatz ...
ist zwar unsauber ^^ .. aber wenn es erstmal nicht anders geht.

ich check das mal aus gebe dann bescheid ob es so hingehauen hat.

danke dir,
elron

4.506 Beiträge seit 2004
vor 16 Jahren

Hallo elron,

siehe ergänzend auch hier:
FileSystemWatcher (Change-Event wird immer zwei mal hintereinander aufgerufen, wieso?)

Ich habe es damals so gelöst, dass ich mir eine Liste aufgebaut hab, die nach und nach probiert, ob entsprechende Dateien exklusiv geöffnet werden können. Wenn ja, dann wird es aus der Liste entfernt und ein eigenes Event geworfen. Wenn nein, dann bleibt es in der Liste und ein Zähler wird hochgesetzt.

Den Zähler kann man dafür nutzen, dass man bei einer bestimmten Anzahl an versuchen er eine Fehlermeldung bringt.

Das habe ich damals alles lauffähig hinbekommen, kann Dir aber keinen Quellcode mehr geben (alter Arbeitgeber).

Grüße
Norman-Timo

A: “Wie ist denn das Wetter bei euch?”
B: “Caps Lock.”
A: “Hä?”
B: “Na ja, Shift ohne Ende!”