Cosa succederà se due programmi diversi provano a scrivere nello stesso file in modo simulato?

StackOverflow https://stackoverflow.com/questions/5374567

  •  28-10-2019
  •  | 
  •  

Domanda

  1. Cosa succederà se due programmi diversi provano a scrivere allo stesso file contemporaneamente?

  2. Uno dei programmi proverà un errore di blocco del file?

  3. Come dovrebbero essere progettati i programmi per gestire questo scenario?

È stato utile?

Soluzione

Quando la seconda app (o thread) prova ad aprire il file per scriverlo, lancerebbe un'eccezione .. semplice ..

Altri suggerimenti

Supponiamo che tu abbia l'utente A e l'utente B, quello che puoi fare è, lascia che entrambi modifichino il contenuto, ci sarà una piccola differenza nel tempo "simultaneo" vuoi che sia, quindi controlla quale utente ha "inviato" il Modifiche prima, salva quelle modifiche e richiedono un messaggio intelligente al prossimo utente dicendo "Il file è stato aggiornato, controlla le modifiche prima .. blah blah".

Usa Filelock per evitare l'eccezione IO quando si accede al file da più thread.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top