Accueil > Forum > > > > Temps d'execution d'un composant COM
Temps d'execution d'un composant COM
mercredi 25 juillet 2007 à 18:08:45 |
Temps d'execution d'un composant COM

leromantique6
|
Bonjour, En fait j'aurai voulu savoir pour quelle raison un executable et une dll (objet com) n'ont pas le même temps d'execution bien qu'il soient finalement identiques? Je mexplique j'ai generé une DLL et un EXE a partir de mon projet avec VS2003. Lorsque je lance l'exe a partir du prompt il met 20 secondes, par contre quand je le lance à partir d'une page ASP en tant que composant COM il m'est plus de 90 secondes! A quoi ca serait dû ? ne serait il pas possible d'obtenir les mêmes perfomances quand lancant le .exe mais toujours à partir d'une page ASP ? Merci d'avance pour votre réponse.
|
|
jeudi 26 juillet 2007 à 23:53:16 |
Re : Temps d'execution d'un composant COM

ShareVB
|
salut,
des pistes : http://www.thescripts.com/forum/thread227347.html
tu exécutes ton exe en tant que serveur exe activex automation ? ou alors tu appelles ta dll depuis asp ?
du plus il est normal que le marshalling com pour fournir à asp ralentisse légèrement la dll mais pas à ce point...
ShareVB
|
|
vendredi 27 juillet 2007 à 09:47:46 |
Re : Temps d'execution d'un composant COM

leromantique6
|
En fait j'execute la dll à partir d'une page ASP et c'est là que ca mets du temps..
|
|
vendredi 27 juillet 2007 à 21:04:54 |
Re : Temps d'execution d'un composant COM

ShareVB
|
salut,
est-ce que tu utilises des threads dans ton .net ? est-ce que cela met du temps au premier appel d'une méthode et pas au second ? essaies d'exécuter ton exe .net "en tant que" l'utilisateur sous lequel tourne IIS et ASP...sinon, donne au moins le prototype de la méthode que tu appelles...
ca ne te lève pas d'exception ? ca met juste du temps pour marcher ?
ShareVB
|
|
samedi 28 juillet 2007 à 21:13:59 |
Re : Temps d'execution d'un composant COM

leromantique6
|
Dslé j'aurai du pensé à mettre mon code avant. Par contre j'utilise pas vraiments de threads. Mai voici la signature de ma méthode en C# : public void convertAll(string file){ StreamReader src = new StreamReader(System.IO.File.OpenRead(file), System.Text.Encoding.Default); ... } Et voici comment je l'appelle à partir de la page ASP : set ob_convertissor = Server.CreateObject("DetectLanguageProcess.util.ConvertToTree") ob_convertissor.convertAll("path\ToConvert.txt") <- c'est ca qui m'est beaucoup de temps.
Que je le lance une ou plusieurs fois, ca mets toujours autant de temps... alors je sais pas pkoi..
En tout cas merci de m'aider
|
|
samedi 28 juillet 2007 à 21:23:00 |
Re : Temps d'execution d'un composant COM

coq
|
Salut, Que fait tu d'autre dans cette méthode ? Est ce qu'elle produit le résultat attendu ou pas ? Est ce que le passage du chemin d'accès complet au fichier au lieu du chemin relatif change quelquechose ? /* coq MVP Visual C# CoqBlog*/
|
|
samedi 28 juillet 2007 à 21:37:34 |
Re : Temps d'execution d'un composant COM

leromantique6
|
Je viens de tester avec un chemin relatif et absolu, j'obtient les mêmes resultats. Le résultat est bien celui attendu mais trés long a obtenir. En fait cette méthode elle prend des gros dictionnaires (par exemple le francais) le segmente en sous fichiers (26), un pour chaque lettre de l'alphabet et y inscrit tous les mots commencants par cette lettre. Ensuite il reprends tous ces fichiers pour les linéarisés(c'est à dire dans une forme avec laquelle un autre programme de lecture puisse les convertir en arbre indexé.). Sinon c'est vrai que dans mon code, j'ai tout de même utilisé des verrous (un Mutex), mais il ya pas de raison qu'il bloque à partir d'une page ASP et pas à partir de mon .exe ..
|
|
samedi 28 juillet 2007 à 21:56:36 |
Re : Temps d'execution d'un composant COM

coq
|
Ce n'est pas vraiment le même contexte. Il doit probablement y avoir plus de vérifications dans un cas que dans l'autre, notamment au niveau des accès disque. Le type de thread utilisé ne dois pas non plus être le même Après pour le coup du Mutex c'est à voir, je ne connais pas vraiment le fonctionnement dans ce contexte. Maintenant que tu sais que c'est l'execution de la méthode qui est longue, tu n'as "plus qu'à" tracer pour déterminer quelle portion du code provoque celà. /* coq MVP Visual C# CoqBlog*/
|
|
samedi 28 juillet 2007 à 22:25:17 |
Re : Temps d'execution d'un composant COM

ShareVB
|
salut,
c'est peut être une histoire de MTA/STA, je crois que ASP ne sait utiliser que STA c'est à dire un thread ne peut accéder qu'à ses données mais pas à celle des autres threads...si tu as des mutex, c'est surement que tu as plusieurs threads et donc cela peut être venir de là, car comme le thread qu'utilise ASP en interne est en STA, je pense que les autres threads que lance ta dll le deviennent aussi (alors qu'ils s'attendent à MTA), ce qui fait que les données sont marshallées "par valeurs" entre threads ce qui peut causer des lenteurs...enfin, ca doit être un truc dans le genre parce que MTA/STA sont assez compliqués...
des liens en vrac : http://support.microsoft.com/?scid=kb%3Ben-us%3B308095&x=18&y=16 http://www.zdnet.fr/builder/architecture/services_web/imprimer.htm?AT=39144266-39021055t-39000780c http://www.codeguru.com/cpp/com-tech/activex/apts/article.php/c5551/
ShareVB
|
|
samedi 28 juillet 2007 à 22:42:12 |
Re : Temps d'execution d'un composant COM

leromantique6
|
Ben en fait si tu veux j'ai utilisé des Mutex, mais j'ai pas declaré de threads quelconque par rapport à l'application. En fait je me suis dit quand lancant par exemple deux page Web qui utiliserai ma dll, serait équivalent à lancer deux threads d'un même programme. C'est pour cela que j'ai décidé de mettre des verrous. Mais je m'avance peut être un peu trop en disant ca ... Je vais regarder les liens un peu pour comprendre le MTA/STA, qui m'est totalement inconnu.
Cordialement,
|
|
Cette discussion est classée dans : exe, composant, partir, temps, execution
Répondre à ce message
Sujets en rapport avec ce message
Execution distante d'un exe [ par kurisutofu64 ]
Bonjour,J'espere poster dans la bonne section ...Je viens de creer un programme vraiment simple afin de faire un test depuis un PC distant. Le program
Créer une image à partir d'un controle [ par bossun ]
Salut,Je voudrais créer une image depuis un controle et l'exporter dans un jpg, bmp, ou png (c'est égal)Dans mon cas il s'agit d'un graphique créé à p
temps d'execution long [ par beny100 ]
bonjour,j'ai conçut mon programme sous csharp qui traite des fichiers mais pendant l'execution il s'arrête puis me renvoi ce message puis ne continue
Temps d'execution d'une requete SQL [ par dread_loque ]
Bonjour,Je dévellope actuellement une application qui communique avec une BDD Access et effectue différentes manipulations sur celle-ci.Toutes mes req
Est-ce possible d'avoir un dll à partir d'un exe ? [ par petermadio ]
Salut !Peut-on produire à partir d'un executable une dll ?Si oui comment ?Merci !
éxécution - C# trop lent [ par otavioreis ]
Bonjour,J'ai écrit le programme suivant à partir d'un copier-coller de Java mais le temps d'execution est 20 fois plus long. Est-ce que quelqu'un saur
lancer.exe automatiquement a partir d'un clé USB [ par Queen23 ]
bonjour je cherche comment lancer une application en c# .exe automatiquement quant la clé est détectée
execution d'un programme code source [ par tintin4048 ]
J'ai telecharger un programme. Celui ci comporte un exe. Commet ouvrir à partir de cet exe qui n'est pas reconnu ? Je suis debutant et ma question n'a
Mesurer temps d'execution d'un programme [ par Duncan31000 ]
Bonjour, Je souhaiterais mesurer le temps d'execution d'un programme pour un certain nombre de fois. Par exemple, executer ce programme 50 fois met "
Mon formulaire vibre en execution [ par sahul42 ]
Je developpe une application en C# 2005 ,mais j'ai actuellement un problème avec mes formulaires. Lorsque je lance mon application et j'ouvre n'impo
Livres en rapport
|
Derniers Blogs
[TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES[TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES par gpommier
Suite à la session que j'ai présenté sur WebMatrix 2, vous pouvez trouver les slides ici, ainsi que les démos en packages nuget : démos1 et démos2 J'en profite pour remercier chaleureusement tous ceux qui sont venus très nombreux à cette sess...
Cliquez pour lire la suite de l'article par gpommier [SHAREPOINT] LES SESSIONS TECHDAYS 2012.[SHAREPOINT] LES SESSIONS TECHDAYS 2012. par Patrick Guimonet
Voici donc pour ceux qui n'ont pas pu venir, ou ceux qui n'ont pas pu toutes les suivre la liste des sessions SharePoint aux TechDays 2012, que je mettrais à jour dès que les liens des vidéo seront disponibles. Ou ici : http...
Cliquez pour lire la suite de l'article par Patrick Guimonet TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3 par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE !MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE ! par Vko
Hier durant une session dédiée aux Techdays 2012, j'ai eu le plaisir d'annoncer la sortie de la Béta 2 de Mishra Reader. C'est quoi ? Pour les utilisateurs, c'est une vraie expérience de lecture de flux RSS sur Windows. Rien à voir avec les produit...
Cliquez pour lire la suite de l'article par Vko [FRAMEWORK 4] LES TASKS ET LE THREAD UI[FRAMEWORK 4] LES TASKS ET LE THREAD UI par fathi
Je viens de passer quelques temps au TechDay's et j'ai pu voir pas mal de session intéressante. Par contre une chose m'a un peu étonné lors de certaines de ces sessions qui abordaient les améliorations du framework .NET (donc le 4.5) : en gros, bea...
Cliquez pour lire la suite de l'article par fathi
Logiciels
Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning COLLECTOR PLUS (3.00B)COLLECTOR PLUS (3.00B)COLLECTOR PLUS version 3.00B est un logiciel utilisant une base de données alimentée par :
- L... Cliquez pour télécharger COLLECTOR PLUS PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO LettresFaciles 2011 (8.0.0.1)LETTRESFACILES 2011 (8.0.0.1)LettresFaciles est un logiciel facilitant la création et la rédaction de lettres types.
Son inte... Cliquez pour télécharger LettresFaciles 2011
|