Déterminer méthode bloquante

Bonjour à  tous,


J'arrive à  une phase finale d'un projet (avant recette) et je me retrouve confronté à  un problème et pas des moindres.


 


J'ai une librairie statique, développée par mes soins, embarquée dans une application.

Lorsque la librairie est chargée il m'arrive d'avoir le main Thread bloqué durant l'utilisation de l'app.


 


Ma question est: Vu la complexité de ma lib statique, comment déterminer la méthode bloquante?

J'ai "essayé" d'utiliser Instruments mais Whouaaaaou ! Que c'est pas évident.


 


Merci d'avance pour votre aide.


Réponses

  • Je ne vois qu'Instruments pour t'aider à  trouver la méthode où ton code est bloqué...


     


    Samir avait cité ce lien dans un autre post pour l'utilisation d'Instruments. J'ai regardé vaguement, çà  a l'air pas mal... mais peut-être que tu connais déjà  !


  • Je ne connais pas.

    Je regarde ton lien tout de suite et je reviens pour vous faire un retour.


     


    Concernant Instruments, mon code de la lib évolue bien dans le main thread (sauf celle qui agissent sur l'interface.)


    Mais il y a forcement quelque chose qui bloque.


     


    Je continue d'investiguer. Si vous avez d'autres pistes je suis preneur.


  • Bon ça n'a pas évolué.

    J'ai trouvé des méthodes qui étaient longues, mais mon app n'est toujours pas fluide comme je le voudrais et j'ai vraiment du mal a reproduire les lags :/


  • Hello,


     


    As-tu essayé avec Instruments time profiler ? essaie de naviguer un peu partout dans ton application et  voir les méthodes qui prennent du temps.  




  • Hello,


     


    As-tu essayé avec Instruments time profiler ? essaie de naviguer un peu partout dans ton application et  voir les méthodes qui prennent du temps.  




    J'ai bien essayer, mais je ne trouve pas ce qui bloque.

    J'ai bien une méthode qui prend du temps mais c'est une méthode utilisé uniquement en debug.

    J'ai bien vérifié, elle ne s'execute pas en mode "release" 

Connectez-vous ou Inscrivez-vous pour répondre.