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

NetBeans Java Discussion :

Arrêter un thread boutton


Sujet :

NetBeans Java

  1. #21
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    390
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 390
    Points : 127
    Points
    127
    Par défaut
    oui mais dès que je décide de relire la musique j'ai l'erreur de"java heap space"

    Est-ce-que ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
                    // création d'une instance du Thread
                    thread = new UnThread(nomChanson.getText());
                    // Activation du Thread
                    thread.start();
     
        }
    je peux l'appeler 2 fois , c'est peut être ça l'erreur ?
    Le temps est le pire enemi de l'homme

  2. #22
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    ton thread précédent est bien arrêté? (tu peux par exemple confirmer par un System.out.println() à la fin du run que t'en est sorti?)
    de plus tu fait ceci:
    byte[] samples = new byte[length];


    si length est très élevé, ca explique ton out of memory. Que vaut cette valeur lors de l'erreur?

    PS: si tu pouvais retirer ce et traiter l'erreur de manière correct (au moins en l'affichant) ce serait pas du luxe

  3. #23
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    390
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 390
    Points : 127
    Points
    127
    Par défaut
    length vaut 38 711 808 au moment de l'erreur. La taille du fichier .wav (normal)
    C'est ici que survient l'erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    byte[] samples = new byte[length];
    Le temps est le pire enemi de l'homme

  4. #24
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    soit 36M dans une jvm qui par défaut a environ 64M de mémoire. Cherche pas plus loin. En plus je vois pas l'intérêt de cette vriable de 36M alors que tu ne l'utilise nulle part

  5. #25
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    390
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 390
    Points : 127
    Points
    127
    Par défaut
    ......j'ai lu une autre chanson de 24 Mo et sa marche ..... .
    n plus je vois pas l'intérêt de cette vriable de 36M alors que tu ne l'utilise nulle part
    Elle est utilisé dans "DataInputStream(stream);"
    Le temps est le pire enemi de l'homme

  6. #26
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    390
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 390
    Points : 127
    Points
    127
    Par défaut
    MERCI à tous !
    Le temps est le pire enemi de l'homme

  7. #27
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 274
    Points : 4 166
    Points
    4 166
    Par défaut
    Essaie de réduire la taille de ton buffer.
    Tu feras moins de tours de boucles et tu éviteras les out of memory.

  8. #28
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    pourquoi fais-tu les opération suivantes

    audioInputStream -> DataInputStream -> byte[] -> byteArrayInputStream -> play

    plutot que de faire audioInputStream -> play

    ??
    Ce serait vachement plus léger en mémoire, en opération et en code

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Arrêter un thread en python ?
    Par fanou31 dans le forum Général Python
    Réponses: 7
    Dernier message: 23/06/2013, 19h15
  2. Réponses: 2
    Dernier message: 05/10/2006, 18h56
  3. [Thread] arrêter un thread
    Par melvar dans le forum Concurrence et multi-thread
    Réponses: 4
    Dernier message: 10/04/2006, 19h06
  4. Réponses: 18
    Dernier message: 06/04/2005, 15h09
  5. Arrêter une Thread brutalement!
    Par Rodrigue dans le forum C++Builder
    Réponses: 2
    Dernier message: 18/01/2004, 22h29

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