Si j'essaie de supprimer un fichier, mais en même temps qu'un autre processus exécute un fichier (...) sur le même fichier, cela bloquera-t-il potentiellement le fichier et provoquera l'échec de mon processus?L'appel d'un File.Exist va-t-il verrouiller un fichier?
Répondre
Non, File.Exist() vérifie uniquement que le fichier en question se trouve sur le système de fichiers au chemin spécifié. Il n'accède en aucun cas aux données de fichier ou aux en-têtes, donc il ne mettra pas un verrou sur le fichier. Sur une note de côté, même l'ouverture d'un fichier ne le verrouillera pas forcément. Cela dépend des paramètres d'accès que vous choisissez lors de l'ouverture.
Non, File.Exist ne verrouille pas le fichier. Une bonne façon de voir ce qui se passe sous les couvertures, cependant, est de regarder à travers le source code.
Déroulez le code source des bibliothèques de classes de base .Net Framework et examinez ce qui se passe dans les coulisses. La classe System.IO.File, en particulier, a des sélections par défaut très intéressantes pour le traitement, le verrouillage, la libération de fichiers, etc. Dans des cas comme le vôtre, voir la source de ce qui se passe dans les coulisses peut faire toute la différence. vous concevez votre application.
par le lien:
Que puis-je faire avec le Shared Source CLI? Il existe une multitude de technologies de langage de programmation dans l'interface CLI Shared Source. Il est susceptible d'intéresser un large public, dont:
- Les développeurs intéressés par le fonctionnement interne du .NET Framework peut explorer cette implémentation de la CLI pour voir comment fonctionne la collecte des ordures, la compilation JIT et de vérification est traitées, les protocoles de sécurité mis en œuvre et l'organisation des frameworks et des systèmes d'objets virtuels.
- Enseignants et chercheurs travaillant avec la technologie de compilateur avancée. Les projets de recherche sur les extensions de langage, les optimisations JIT et la récupération de place moderne ont tous une base dans l'interface CLI Shared Source. Les cours de compilateur modernes peuvent être basés sur les langages C# ou JScript implémentés sur la CLI. Les personnes qui développent leurs propres implémentations CLI trouveront l'interface CLI Shared Source comme un guide indispensable et complémentaire aux normes ECMA.
Ceci est une réponse à anu - et à quiconque fait quelque chose de similaire avec des fichiers.
Il est très important d'accéder aux fichiers avec une instruction using. Cela vous assure de disposer de manière appropriée de votre référence au fichier.
using (var fs = File.OpenRead(path)) {
// Do something
}
- 1. Comment verrouiller le fichier
- 2. pouvons-nous verrouiller un répertoire?
- 3. Verrouiller un contrôle winforms
- 4. UDP Verrouiller?
- 5. Forcer l'utilisateur à verrouiller le fichier dans SVN avant d'éditer
- 6. Verrouiller quelqu'un à un domaine particulier
- 7. en utilisant JS pour verrouiller un div
- 8. Filetage C# - Verrouiller l'objet
- 9. Python: Verrouiller l'accès au répertoire sous Windows
- 10. verrouiller la position d'un NSWindow
- 11. Pourquoi verrouiller peut devenir un goulot d'étranglement de programme multithread?
- 12. Comment "verrouiller" des colonnes dans un tableau HTML?
- 13. Verrouiller PC en Python sur Ubuntu
- 14. Comment verrouiller une application Flash sur site?
- 15. AVAudioPlayer, Catégories de session audio et verrouiller
- 16. Verrouiller les fonctionnalités Word et PowerPoint
- 17. Procédure stockée db2. verrouiller/libérer la table
- 18. Verrouiller les comptes Active Directory par programme
- 19. Pourquoi compiler mon projet Biztalk 2009 verrouiller des fichiers?
- 20. verrouiller une table pour read permet encore de sélectionner (mysql)
- 21. Existe-t-il un moyen de 'verrouiller' le dernier élément dans un ListView à toujours afficher?
- 22. SQL Server 2005 - Existe-t-il un moyen de verrouiller un SELECT dans une transaction?
- 23. Comment empêcher un serveur de se verrouiller après une session Bureau à distance
- 24. Contrôles TableLayoutPanel - Verrouiller la colonne à partir du défilement horizontal?
- 25. Comment verrouiller IO partagé par fourche dans ruby
- 26. Verrouiller la pile libre et la file d'attente en C#
- 27. WPF - Verrouiller Position et taille sur une toile
- 28. MPI: Verrouiller le stdout - 1 processus à la fois?
- 29. Comment verrouiller la console sur des threads dans C# .NET?
- 30. Comment verrouiller la base de données mysql exclusive?