IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

Estimer temps de copie d'un fichier


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 223
    Par défaut Estimer temps de copie d'un fichier
    Bonjour,

    Je souhaiterais savoir si il existe un moyen d'estimer le temps de copie d'un fichier ? L'objectif étant d'autoriser la copie, uniquement si celle si à une durée inférieure à 3 min environ.

    Pour information, je suis sous Windows, je code en C++ et j'utilise les API Windows, ainsi que Qt.

    Cordialement,
    PKO

  2. #2
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Par défaut
    Pour cela, il faut estimer la bande passante de ta copie.

    Soit faire une estimation a priori, c'est à dire que tu lances un test qui te permet de calculer la bande passante entre tous tes supports (cela va être dur pour ceux que tu n'a pas genre USB, FTP, ...). Si la taille du fichier et la bande passante calculée préalablement ne permettent pas une copie en 3 minutes, tu refuses le lancement.

    Sinon, tu calcules ta bande passante au fur et à mesure et au bout de 20 secondes (par exemple) tu as déjà une idée du temps que cela va mettre (en admettant que cette bande passante reste stable ce qui n'est pas garanti avec FTP par exemple). Au bout de ces 20 secondes, tu sais calculer une durée de transfert et tu peux donc décider de continuer ou alors d'arrêter.
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 223
    Par défaut
    Donc si j'ai bien compris je dois faire un truc du genre :

    - Lancer une copie de 20 Mo
    - Calculer le temps de copie pour ces 20 Mo
    - Déterminer d'après le temps nécessaire pour 20 Mo, le temps nécessaire pour la totalité de ce que je souhaite transférer.

    Je lance donc d'un coté ma copie, et de l'autre un chrono.
    Et suite à tout ceci, je saurais à peu de chose prêt si le transfert total est réalisable en +/- 3min.

    C'est bien cela ?

  4. #4
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    27 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 27 122
    Billets dans le blog
    148
    Par défaut
    C'est plutot compliqué ce que tu demande. Car par exemple on lance une copie pendant que le périphérique est occupé, ainsi la vitesse est ralentie.
    Disons que la vitesse est ralentie que lors du test de 20Mo, donc tu refuse, alors qu'il est possible qu'après le disque dur soit plus rapide, donc copie possible.
    Exemple inverse, le test passe correctement, et d'un coup le périphérique est occupé, tu auras fait une copie de plus de 3 minutes, à cause de cette occupation que tu n'aura pas vu...
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 223
    Par défaut
    LittleWhite > Bonjour. Effectivement, c'est un des nombreux paramètres à prendre en compte. Je pense que la méthode de ram-0000 peut me convenir. A tester. Mais je me pose une question : Lors de la copie sous windows, une petite fenêtre apparait avec les fichiers transférés, et le temps estimé. Comment est obtenu ce temps ?

    Cordialement,
    PKO

  6. #6
    Membre Expert
    Avatar de white_tentacle
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    1 505
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 1 505
    Par défaut
    C'est une estimation "à la louche" en fonction du taux de transfert sur les premiers fichiers (tu noteras qu'elle met un peu de temps à apparaître).

    C'est un chiffre nécessairement faux, mais suffisamment juste dans beaucoup de cas pour être une bonne indication. De toute façon, on ne sait pas faire mieux.

    Après, il y a deux écoles pour l'estimation du temps restant. Celle qui consiste à se baser sur le taux moyen depuis le début de la copie, et celle qui consiste à se baser sur le taux moyen depuis un certain delta de temps.

    Ça change les résultats de l'estimation pour des copies assez longues à vitesse non constante. Mais de toute façon, ce chiffre étant faux, il n'y en a pas un de plus juste que l'autre, ça dépend .

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. calcul de temps estimé pour la copie.
    Par milach dans le forum Général Python
    Réponses: 6
    Dernier message: 20/03/2013, 14h49
  2. copie de base, fichier mdw, perte des droits
    Par hades666evil dans le forum Access
    Réponses: 2
    Dernier message: 14/09/2005, 17h06
  3. Copie d'un fichier sans montage avec Samba
    Par jean-jacques varvenne dans le forum Réseau
    Réponses: 5
    Dernier message: 14/07/2005, 11h31
  4. [Oracle9i][DataeXchanger] Temps de copie bien long
    Par Jibees dans le forum Oracle
    Réponses: 15
    Dernier message: 29/06/2005, 11h38
  5. copie d'un fichier vers un autre serveur
    Par jexl dans le forum ASP
    Réponses: 4
    Dernier message: 20/12/2004, 16h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo