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

VB.NET Discussion :

une Erreur à la fermeture du programme


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Dr_shaman
    Homme Profil pro
    Ingénieur Concepteur Développeur
    Inscrit en
    Février 2007
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur Concepteur Développeur

    Informations forums :
    Inscription : Février 2007
    Messages : 120
    Par défaut une Erreur à la fermeture du programme
    Bonjour, j’ai encore un problème, mon appli est presque fini mais je traine un bug depuis le début. Quand je ferme mon application qui a des threads, des backgroundworker, et des timer, et qui affiche un graphique. J’ai une erreur :

    Tentative de libération d'un RCW en cours d'utilisation. Le RCW est utilisé sur le thread actif ou sur un autre thread. Une tentative de libération d'un RCW en cours d'utilisation peut entraîner des dysfonctionnements ou des pertes de données.


    Je ne c’est pas comment stopper RCW avant sa libération merci encore pour votre aide.

  2. #2
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 197
    Par défaut
    pour les threads avant de faire start, il est possible de mettre IsBackground à True, dans ce cas, à la fin du thread qui l'a créé (généralement le thread principal), le thread secondaire est arreté

    sinon l'appli ne s'arrete pas forcément (ou alors ca peut faire des bugs si le code est pas sécurisé)
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Membre confirmé Avatar de Dr_shaman
    Homme Profil pro
    Ingénieur Concepteur Développeur
    Inscrit en
    Février 2007
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur Concepteur Développeur

    Informations forums :
    Inscription : Février 2007
    Messages : 120
    Par défaut IsBackground vs WorkerSupportsCancellation
    En faite, ci tu veux, j’ai un programme principal (ma couche logiciel) qui charge des plug-ins (ma couche métier). Dans un des plug-ins j’ai un backgroundworker qui dessine mon graphique. Mais, quand je quitte l’application alors que le plug-in est dans un invok pour redessiner la courbe. C’est la que sa plante. En faite quand je clique sur quitter. La fenêtre ce ferme immédiatement, alors que le thread à pas encor comprit que c’est fini et il tante d’afficher la courbe sur une fenêtre fermé. Et je n’ai pas vu la propriété IsBackground pour mon backgroundworker. Cela di il y a WorkerSupportsCancellation, c’est peut-aitre sa ?

    Je vais tester cette apprêt-manger et je dirai si sa a marcher.

    Merci

  4. #4
    Membre confirmé Avatar de Dr_shaman
    Homme Profil pro
    Ingénieur Concepteur Développeur
    Inscrit en
    Février 2007
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur Concepteur Développeur

    Informations forums :
    Inscription : Février 2007
    Messages : 120
    Par défaut c'est pas WorkerSupportsCancellation
    bin non c'est pas WorkerSupportsCancellation puisque je l'avai déja mis a true.

  5. #5
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 197
    Par défaut
    et tu ne peux pas arreter tes backgroundworker quand tu t'arretes ? (ondisposed de form ou autre)
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  6. #6
    Membre confirmé Avatar de Dr_shaman
    Homme Profil pro
    Ingénieur Concepteur Développeur
    Inscrit en
    Février 2007
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur Concepteur Développeur

    Informations forums :
    Inscription : Février 2007
    Messages : 120
    Par défaut arreter tes backgroundworker
    En faite dans Class1_Disposed j'ai mis :

    FINDuTreah = false
    Backgroundworker1.CancelAync()
    Backgroundworker1.Dispose()
    MyBase.Finalize()



    FINDuTreah c'est la condition de la boucle qui est dans le Backgroundworker.


    Sa devrai tout Stopper puits tout fermer? Je ne comprend pas.


    Merci

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 08/11/2010, 17h08
  2. Erreurs à la fermeture du programme
    Par sylvain.cool dans le forum C++
    Réponses: 17
    Dernier message: 10/06/2008, 15h01
  3. Réponses: 8
    Dernier message: 04/03/2008, 23h30
  4. détecter une erreur et arreter le programme en cour
    Par timbrochier dans le forum Langage
    Réponses: 6
    Dernier message: 23/11/2006, 11h03
  5. Message d'erreur à la fermeture d'une page web
    Par WELCOMSMAIL dans le forum Autres Logiciels
    Réponses: 2
    Dernier message: 26/04/2006, 17h12

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