Je veux savoir si le chemin de partage existe, peut-être le Directory.Exists (chemin de la chaîne) n'est pas une bonne méthode en raison de perdre environ 20 secondes lorsque le retour est faux. Est-il possible de revenir « vrai ou faux » si le chemin de partage existe dans le temps (par exemple. 1 ou 2 secondes)comment vous assurer que le chemin de partage existe, sinon, retourner false dans le temps
Répondre
Vous devez exécuter Directory.Exists
dans un thread séparé et mettre en œuvre le délai d'attente vous.
Appelez Thread.Join(TimeSpan ts)
avec votre délai d'expiration.
méthode Essayez décrit here (il repose sur http://msdn.microsoft.com/en-us/library/aa394435(VS.85).aspx)
également, pour diminuer le temps de réponse, vous pouvez faire un contrôle préalable vérifie vraiment part.
BTW, pourquoi un temps de réponse si étrange? Faites-vous vérifier la connexion Internet lente (VPN) ou votre réseau si lent?
Aussi, vous pouvez essayer this method mais il nécessite PInvoke (ici details), donc la première méthode est préférable.
Et vous pouvez vérifier est là réseau disponible via
System.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable()
avant pas effectuer d'autres contrôles ou peut-être quelques contrôles de réseau (voir here), par exemple ping hôte pour vérifier sa disponibilité et après tout vérifier pour le partage réseau.
Si vous voulez le faire en arrière-plan que vous pouvez suivre les conseils d'Albin Sunnanbo
- 1. vérifier si le fichier existe, sinon, créer
- 2. Comment vous assurer que votre transaction SQL est sécurisée?
- 3. Comment vous assurer que Tomcat6 lit CATALINA_OPTS sous Windows?
- 4. javascript: vérifier si le tableau existe, sinon le créer
- 5. Comment faire SINON EXISTE dans SQLite
- 6. Obtenir si entrée de Registre existe si le faire, sinon
- 7. in_array retourne false alors que devrait retourner vrai
- 8. Comment vous assurer que le contenu de l'info-bulle est indexé par Google? (paroles-connexes Rap)
- 9. MS VC++ 6: Pourquoi retourner! False plutôt que vrai?
- 10. "ibtool non trouvé. Veuillez vous assurer que le SDK Apple est installé."
- 11. Comment vous assurer que les paramètres NSUserDefaults sont enregistrés sur le disque lorsque l'application se ferme?
- 12. Mocking Ajax.IsRequest pour retourner False
- 13. Comment éditez-vous le chemin d'élément actuel dans XSLT?
- 14. Est-ce que le directeur de cocos2d peut retourner le temps?
- 15. Que utilisez-vous si vous voulez vous assurer que toutes les méthodes et propriétés sont implémentées
- 16. Comment lancez-vous PartCover avec des espaces dans le chemin?
- 17. Comment retourner 0 si la table est vide, 1 sinon
- 18. Vérifiez si un exécutable existe dans le chemin d'accès Windows
- 19. Existe-t-il un équivalent de l'événement EnterFrame dans Expression Blend/WPF, sinon comment le contourner?
- 20. Comment obtenez-vous le chemin exact vers "Mes documents"?
- 21. QTP: Définir chemin relatif dans QTP pendant le temps d'exécution
- 22. Comment testez-vous le temps de fonctionnement du code VBA?
- 23. Comment vous assurer que les paramètres de type sont différents dans Scala?
- 24. comparer le temps dans awk
- 25. Pourquoi retourner false avec onSubmit rechargement?
- 26. Comment vous assurer que vos fichiers seront lus sur linux/windows
- 27. Comment retourner TRUE | FALSE de la classe en PHP
- 28. Extension de partage Mercurial: comment annuler le partage?
- 29. Comment assurer que l'encodage AJAX fonctionnera
- 30. iPhone Objective-C: Assurez-vous que l'utilisateur autorise le partage de position avant d'effectuer d'autres actions