APPLI MULTITHREAD SYNCRONISÉE ET COMMENTAIRES XML

Lucyberad Messages postés 414 Date d'inscription mercredi 16 juin 2004 Statut Membre Dernière intervention 26 juillet 2007 - 22 avril 2006 à 19:04
blq Messages postés 97 Date d'inscription vendredi 22 octobre 1999 Statut Membre Dernière intervention 13 juin 2016 - 17 sept. 2011 à 23:38
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/37174-appli-multithread-syncronisee-et-commentaires-xml

blq Messages postés 97 Date d'inscription vendredi 22 octobre 1999 Statut Membre Dernière intervention 13 juin 2016 1
17 sept. 2011 à 23:38
Intéressant ce code et la discussion autour du Thread, par contre depuis 2006, le Tuto ne semble pas avoir abouti par une présence sur le site... Dommage !
vr3h Messages postés 164 Date d'inscription jeudi 6 mars 2003 Statut Membre Dernière intervention 9 octobre 2006
16 mai 2006 à 17:10
D'accord :) tout ca c'est bon à savoir ^^ :)
vivement le tuto alors
Lucyberad Messages postés 414 Date d'inscription mercredi 16 juin 2004 Statut Membre Dernière intervention 26 juillet 2007 3
15 mai 2006 à 19:11
Bon alors voila, apres des tonnes de recherche sur le mutex, il s'avere que en fait c'est un outil qui permet d'eviter que 2 thread accede a al meme ressource en meme temps d'un des threads.
d'ou l'utilisation de tickets.

j'ai donc regardé ton code sour visual studio, il a deja indiqué ce qui est vrai que sachant que
Mut.WaitOne()
Me.NombreEntier += 1
Mut.ReleaseMutex()
est dans une classe, le Mut n'est plus reconnu (et il le surligne en bleu).
donc je l'ai viré et lancé, j'obtient 91ms.
quand je vire tout les mutex je merde pas et obtient 31ms.
donc voila, le mutex dans ton cas ne sert apparament a rien.

je me suis renseigné et vu que le mutex ne sert en fait qu'a proteger si un thread accede a une donnée qui necessite .close comme un stream par exemple ou des traitement asynchrone comme un ping asynchrone (alors que dans mon tuto je montre l'exemple d'un ping sur un thread different qui est largement mieux, le multithread est 10x mieux que les demandes asynchrone).

voilou, donc avec ces infos, sachant que je fais un tuto pour debuter et approfondir legerement et surtout faire un code propre, je ne mettrait pas dans un premier temps le mutex.
Lucyberad Messages postés 414 Date d'inscription mercredi 16 juin 2004 Statut Membre Dernière intervention 26 juillet 2007 3
12 mai 2006 à 09:55
Bon le dossier a été rendu ajourd'hui (mais kel merde !), ce week end je pense finir le tuto ^^ (hourra)
vr3h Messages postés 164 Date d'inscription jeudi 6 mars 2003 Statut Membre Dernière intervention 9 octobre 2006
5 mai 2006 à 09:42
lol bon courrage pour le tuto et ta soutenance alors :)
et merci pour la citation :)
Lucyberad Messages postés 414 Date d'inscription mercredi 16 juin 2004 Statut Membre Dernière intervention 26 juillet 2007 3
5 mai 2006 à 00:20
trop bien l'exemple du ticket, allez zou je vais essayer de le mettre dans le tuto ^^ (en te citant ne t'inkiete pas.
sinon y'as quelque contre temps du fait que l'ecole demande un %£$/!# de dossier de soutenance sur un portail a la con (theme STI elec de cette année dans l'academie normande)...
vr3h Messages postés 164 Date d'inscription jeudi 6 mars 2003 Statut Membre Dernière intervention 9 octobre 2006
4 mai 2006 à 10:32
Voilà c'est ça. Le mutex est un petit objet qui fonctionne un peu comme les tickets que tu prends dans un hopital
pour passer à la caisse. Quand tu arrives aux caisses, tu prends un ticket (appel à waitone). Ensuite tu attends
que ton numéro sorte pour aller au guichet (que le mutex soit libre pour l'occuper). Une fois que tu as fini, tu
parts de la caisse, laissant la place libre à la personne d'après (release mutex).
Lucyberad Messages postés 414 Date d'inscription mercredi 16 juin 2004 Statut Membre Dernière intervention 26 juillet 2007 3
3 mai 2006 à 20:53
Bon j'ai compris (du moins je pense) que le mutex sert a savoir si un controle est libre d'acces et le donne au thread qui fait appel a lui quand il est libre.
donc on fais un waitone et c bloqué juaska que le controle soit libre et le realease le realche pour que le controle soit réutilisable aps un autre.

voila je voudrai que tu comfirme ou infirme ou meme corrige ce que j'ai dit precedemment.
vr3h Messages postés 164 Date d'inscription jeudi 6 mars 2003 Statut Membre Dernière intervention 9 octobre 2006
3 mai 2006 à 13:44
lol lucy tu veux savoir quoi sur le mutex ?
cs_eldim Messages postés 956 Date d'inscription lundi 30 mai 2005 Statut Membre Dernière intervention 21 août 2014 1
3 mai 2006 à 11:13
t'in t'es rapide toi lol

mutex j connais pas
Lucyberad Messages postés 414 Date d'inscription mercredi 16 juin 2004 Statut Membre Dernière intervention 26 juillet 2007 3
3 mai 2006 à 10:53
ben la je suis au 2/3 du tuto.
apparté, assasin c du papier maché j'ai meme pas essayé et ritualiste j'aime pas aider les autres lol. moi c'est Necro/Ritualiste.
et pour le tuto ben je m'y remet car ca fait 2 jour que j'ai fini le jeux avec l'armure 60K de la fin. (merci les anglais d'etre les seuls a etre bon dans ce jeux a par ma guilde ^^).

et arretez de me parler de ce jeux car c'est pas un forum pour papotter ici de ca, et ca me donne envie de retourner dessus et le tuto avance pas ^^.
au lieu de jouer tu devrais me filer des infos sur le mutex ^^.
cs_eldim Messages postés 956 Date d'inscription lundi 30 mai 2005 Statut Membre Dernière intervention 21 août 2014 1
3 mai 2006 à 07:46
lol
ritualiste ou assassin ? (ou anciens métiers ?)
Lucyberad Messages postés 414 Date d'inscription mercredi 16 juin 2004 Statut Membre Dernière intervention 26 juillet 2007 3
3 mai 2006 à 01:27
voui c en cours.
(mais c jsute ralenti a cause de guild wars faction :p)
cs_eldim Messages postés 956 Date d'inscription lundi 30 mai 2005 Statut Membre Dernière intervention 21 août 2014 1
2 mai 2006 à 17:38
Bonjour,

Encore un code du genre et toujours les mêmes commentateurs lol

LucyBerad tu ne devais pas faire un tuto la dessus ?
vr3h Messages postés 164 Date d'inscription jeudi 6 mars 2003 Statut Membre Dernière intervention 9 octobre 2006
24 avril 2006 à 16:08
Donc le but final de ce code est juste de montrer comment créer des commentaires qui apparaissent ensuite dans les infos-bulles lors de la saisie...
Ca c'est pour la partie Documentation XML.

Pour ce qui est du Mutex voilà grosso modo comment ca marche :
Quand tu appelles WaitOne, tu as 2 cas possibles :
1/ le mutex est libre, et à ce moment là l'état du mutex est défini sur "occupé"
2/ le mutex est deja sur l'état occupé et à ce moment là le processus qui vient d'appeler WaitOne attend que le mutex soit libéré (en appelant ReleaseMutex) avant de continuer.

Donc quand tu as 2 threads qui risquent d'accéder au même moment aux mêmes données, tu utilise un mutex pour savoir si un processus y accède déjà.
Lucyberad Messages postés 414 Date d'inscription mercredi 16 juin 2004 Statut Membre Dernière intervention 26 juillet 2007 3
24 avril 2006 à 15:30
bon c'est legerement plus clair maintenant.
2 choses sont encore flou: quel est l'utilité de ton code.
et qu'est-ce que Mut.WaitOne() et Mut.ReleaseMutex()
je ne connait pas le mutex mais ca a l'air interessant.
je vais me documenter dessus...
sinon les ''' ne sont que des commentaire, ce sont des commentaire auto-crée par visual dans un fichier designer qui je crois se trouve lors de l'initialisation d'un programme par son designer.
donc oui c'est du xml mais en aucun cas tu en crée car ce sont des comentaires... (d'ou la question, quel est le but de ton code?).
vr3h Messages postés 164 Date d'inscription jeudi 6 mars 2003 Statut Membre Dernière intervention 9 octobre 2006
24 avril 2006 à 15:23
Pardon, pas les guillemets mais les apostrophes...
vr3h Messages postés 164 Date d'inscription jeudi 6 mars 2003 Statut Membre Dernière intervention 9 octobre 2006
24 avril 2006 à 14:29
Bon je viens de mettre à jour, j'espere que c'est un peu mieux...
Pour ce qui est du XML, il s'agit de ce qui se trouve apres les triples guillemets (''')... enfin c'est un petit truc que j'ai trouvé par hasard dans MSDN, mais j'ai peut etre mal traduit ?
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
23 avril 2006 à 02:04
D'accord avec Lucyberad

Il y a trop de gens qui utilisent des variables du genre
Dim T as Whatever
Dim a as UnAutre

a = T - Y% + X&

et on finit par s'y perdre...

Les commentaires, c'est bien.
Les noms de variables ou de procédures, c'est encore mieux.
Il ne faut pas être avares de lettres. De simples Ctrl_C et Ctrl-V peuvent faciliter le travail pour ceux qui détestent entrer des lettres au clavier

Michel
Lucyberad Messages postés 414 Date d'inscription mercredi 16 juin 2004 Statut Membre Dernière intervention 26 juillet 2007 3
22 avril 2006 à 19:04
ton code est franchement pas clair, il manque aussi bocoup de commentaires...
c'est plutot mal ordonné aussi.
d'ailleurs je n'ai vu aucune syntaxe pour faire du xml (aucune syntaxe .net car le xml est tres facile avec des commandes .net)
et enfin comme c'est un code a but pedagogique et c'est meme recommandé de le faire tout le temps pour une bonne comprehension: mettre des noms de variable et de classe et autres... explicite! car la une seule lettre c'est vraiment a mon avis n'avoir aucune envie de structure.

donc voila je te fais remarquer et j'espere que tu rearangera mieux ton code (qui est peut-etre bien) car la c'est trop dur de comprendre car il manque les bases.
Rejoignez-nous