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

Windows Forms Discussion :

[VB.net] backgroundworker et UC à 100%


Sujet :

Windows Forms

  1. #1
    Membre du Club Avatar de grand_prophete
    Inscrit en
    Avril 2005
    Messages
    85
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 85
    Points : 40
    Points
    40
    Par défaut [VB.net] backgroundworker et UC à 100%
    Bonjour

    Je fais l'acquisition d'un signal AC en continu avec une carte pci et j'affiche le signal sur un oscilloscope virtuel.
    Pour ça j'utilise un backgroundworker. Le problème est que ça me pompe 100% des ressources CPU.
    Est-ce un problème dans ma maniere d'utiliser la BGW ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    PrivateSub BackgroundWorker9_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker9.DoWork
    
    Dim worker9 As System.ComponentModel.BackgroundWorker = CType(sender, System.ComponentModel.BackgroundWorker)
    AddHandler BackgroundWorker9.DoWork, AddressOf oscillo1
    EndSub
    
    PrivateSub backgroundWorker9_RunWorkerCompleted(ByVal sender AsObject, ByVal e As System.ComponentModel.RunWorkerCompletedEventArgs) Handles BackgroundWorker9.RunWorkerCompleted
    Try
    U1.PlotY(Waveforms) 'Affiche la courbe sur l'oscillo
    my_niScope.Abort()
    Catch ex As Exception
    EndTry
    EndSub
    
    PrivateSub oscillo1(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs)
    
    Dim numOfSamples AsInteger
    Dim Waveform_Info() As niScopeWfmInfo
    
    my_niScope.ActualRecordLength(numOfSamples) 'get record length
    ReDim Waveforms(numOfSamples - 1) 'initialize result arrays Waveforms and WfmInfo
    ReDim Waveform_Info(numOfSamples - 1)
    my_niScope.Read("0", 1, 10000, Waveforms, Waveform_Info) 'Realise la lecture du signal
    'End If
    EndSub
     
    
    
    Et l'appel
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    PrivateSub Timer1_Elapsed(ByVal sender As System.Object, ByVal e As System.Timers.ElapsedEventArgs) Handles Timer1.Elapsed
    BackgroundWorker9.RunWorkerAsync()
    end sub
     
    
    se fait dans un timer
    Je précise que les softs pour tester la carte font la meme chose sans
    pomper toutes les ressources.

    Ou bien c'est ma fonction qui veut ça et je peux rien n'y faire ?

    Merci

  2. #2
    Membre du Club Avatar de grand_prophete
    Inscrit en
    Avril 2005
    Messages
    85
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 85
    Points : 40
    Points
    40
    Par défaut
    Une petite idée sur le sujet quelqu'un ?

  3. #3
    Membre régulier Avatar de netomin
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    81
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2005
    Messages : 81
    Points : 102
    Points
    102
    Par défaut
    Enfin c'est resolu ou pas?
    Il y a toujours une réponse, il suffit de la trouver.

  4. #4
    Membre du Club Avatar de grand_prophete
    Inscrit en
    Avril 2005
    Messages
    85
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 85
    Points : 40
    Points
    40
    Par défaut
    Oui c'est résolu, j'ai trouvé la solution entre temps.

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

Discussions similaires

  1. [VB.NET] BackgroundWorker trés lent
    Par Morphee_ dans le forum Framework .NET
    Réponses: 14
    Dernier message: 15/11/2012, 10h21
  2. [VB.net] backgroundworker targetexception
    Par nasty dans le forum Windows Forms
    Réponses: 6
    Dernier message: 22/12/2009, 13h50
  3. Réponses: 1
    Dernier message: 25/05/2007, 17h35
  4. [.NET 2.0] Probleme de BackgroundWorker
    Par Aspic dans le forum Windows Forms
    Réponses: 5
    Dernier message: 22/03/2007, 15h13
  5. [FW2.0][VB.net] backgroundworker
    Par grand_prophete dans le forum Windows Forms
    Réponses: 5
    Dernier message: 03/05/2006, 15h02

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