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++/CLI Discussion :

Temps d'exécution matériel et logiciel


Sujet :

C++/CLI

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 38
    Par défaut Temps d'exécution matériel et logiciel
    Je me pose plusieurs question suite à des observations sur le comportement de mon application.

    Cette application permet de stocker dans un fichier les données en provenance d'un port série. Ceci est réalisé par le biais d'une fonction ("dataReceived") appelée à chaque réception sur la liaison série utilisée. Cette fonction appelle elle même une autre fonction (qui elle va mettre en mémoire les données), en safe-thread. Voilà pour le fonctionnement général.

    L'autre comportement de cette application est que :
    Chaque fois qu'une erreur de réception est signalée on revient à la ligne dans le fichier. Bien que (à priori, et c'est également une de mes questions) l'on ne puisse pas faire correspondre (temporellement) l'événement ErrorReceived à l'événement DataReceived, je les ai entrelassés pour pouvoir à peu près savoir quelle donnée reçue à fait l'objet d'un ErrorReceived.


    Note : le fichier est également affiché dans une TexBox pour voir son avancement en temps réel.

    Voilà ce qui me trouble :
    Le transfert que j'effectue, je le connais. C'est-à-dire que je connais exactement où vont se trouver les erreurs de récepetion du côté pc, ainsi que le nombre et la valeur des données.
    Et bien, se transfert qui prend 4s en temps réel, en prend 8 à la réception. Bon OK on peut se dire que c'est le buffer de réception (matériel) du port série qui se remplit. Mais dans ce cas lors du traitement on ne devrait plus avoir de ErrorReceived, puisque c'est un événement ponctuel qui n'a pas de lien directe avec les données lues.

    Bref je me demande simplement qu'est-ce qu'il se passe du côté windows, qu'est-ce qu'il met en mémoire tempon, met-il également toutes les occurences de ErrorReceived ? Où est-ce qu'il met ça ... ? Est-ce possible de savoir exactement qu'elle donnée reçue a généré l'ErrorReceived ?

    Merci d'avance. Si je n'e suis pas assez clair, n'hésitez pas à me demander des précisions ...

  2. #2
    Membre éprouvé Avatar de GP77
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 111
    Par défaut
    Tes tests sont mode débug ???
    Perso mon app en débug avait des performances assez mauvaises, mais en release tout se passe à une vitesse normale...
    Essaie ton app en release, on ne sait jamais...

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 38
    Par défaut
    eh non, je suis bien en release...

Discussions similaires

  1. Réponses: 9
    Dernier message: 20/06/2005, 12h17
  2. [C#] Calcul du temps d'exécution.
    Par lozzko dans le forum Windows Forms
    Réponses: 4
    Dernier message: 12/06/2005, 16h12
  3. Réponses: 2
    Dernier message: 25/05/2004, 15h33
  4. Affichage du temps d'exécution d'une requête
    Par milka dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 22/03/2004, 17h48
  5. Temps d'exécution des instructions FPU
    Par ubi dans le forum Assembleur
    Réponses: 2
    Dernier message: 24/10/2003, 18h39

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