» »

[Java] Preveri ali je dokument v uporabi

[Java] Preveri ali je dokument v uporabi

Luka91 ::

Imam program v katerem najprej pokličem metodo, ki pokliče nek program in ta program potem naredi neko datoteko. Takoj zatem pa pokličem še neko metodo, ki rabi ta dokument od prejšne metode.

Sedaj pa bi rad preveril ali je dokument trenutno v uporabi drugega programa, da naslednja metoda počaka dokler dokument ni prost. Kakor sem bral na spletu to ni direktno implementirano v Javi, tako da me zanima, če kdo pozna kakšno elegantno rešitev.

medobear ::

Ko odpres datoteko, kreiraj nek lock file, npr. ime_datoteke.lock , ko datoteko zapres pa ga izbrisi. V drugi metodi preveris eksistenco lock fajla.

Če pa ne moreš modificirat delovanja "eksternega" programa, predvidevam da uporabljaš nekajv smislu
Runtime rt = Runtime.getRuntime();
Process proc = rt.exec("blabla");


Za tem dodaj še
int exitVal = proc.waitFor();
, da se naslednja metoda ne bo klicala, preden se zunanji program ne izvede do konca.

Luka91 ::

Imaš prav uporabljam prav tak način kot si ga opisal:

Runtime rt = Runtime.getRuntime();
Process proc = rt.exec("blabla");


Sem vključil še to metodo waitFor(). Tako da bom sprobal če bo to dovolj.

Zgodovina sprememb…

  • spremenil: Luka91 ()


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

android črta

Oddelek: Programiranje
412399 (1670) g333kk
»

[Java] Castanje

Oddelek: Programiranje
91531 (1386) fiction
»

Tezava pri instanciranju class-a

Oddelek: Programiranje
61294 (1165) KernelPanic
»

c# kam lambda delegat shrani spremenljivke? (in njegov scope)

Oddelek: Programiranje
223049 (2607) Sportmania
»

[java] Runtime.exec()

Oddelek: Programiranje
111884 (1757) borchi

Več podobnih tem