[MY-RS] Projet BTS besoin d'aide

Pour les scripts écrits en C#
Règles du forum
Merci de respecter la NOMENCLATURE suivante pour vos TITRES de messages :

Commencez par le niveau de vos scripts
DB = Débutant
MY = Moyen
CF = Confirmé

Puis le domaine d'application
-RS = Réseau
-AL = Algorithmie

Exemple :

[DB-RS] Mouvement perso multijoueur
Myst-Click
Messages : 1
Inscription : 20 Mars 2018 16:34

[MY-RS] Projet BTS besoin d'aide

Message par Myst-Click » 20 Mars 2018 16:57

Bonjour,
Alors voila je suis en BTS snir et je suis sur un projet "le simulateur de voile". Mon objectif sur ce projet est de connecter un client(application que je dois faire) a un serveur(simulateur de voile). Jusque la je n'ai pas eu de soucis . Apres avoir fais cela, je dois pouvoir envoyer des valeurs(float) permettant ensuite au serveur de récupérer celles ci pour les utiliser sur certains paramètres du simulateurs(vitesse des vagues, tailles des vagues ...)
Pour résumer, mon application doit pouvoir paramètres les vagues du simulateurs a distance.
Le problème que j'aie, c'est lorsque j'appuie sur le bouton d'envoie de donnée directement relié a une méthode "Waves Paramètres". Je suis obligé d'appuyer trois fois dessus pour envoyer entièrement les données et les lire sur le serveur. Le simulateur plante jusqu'au dernier envoi(le troisième).
J'aurai donc besoin de votre aide, pour n'avoir besoin d'appuyer qu'une seule fois. je vous envoies les méthodes que j'utilise pour envoyer ces données du client. Je vous mets en pièce jointe, les deux méthodes(Send() et WavesParameters() ) utilisées pour envoyées les données au serveur
methode wavesparameters.png
methode wavesparameters.png (35.11 Kio) Consulté 1334 fois
methode send().png
methode send().png (28.12 Kio) Consulté 1334 fois
ansi que la méthode utilisée (OnIncommingDataWaves() ) pour lire des données sur le serveur.
Affichage données serveur.png
Affichage données serveur.png (104.48 Kio) Consulté 1334 fois
 ! Message de : boubouk50
Mauvaise section. Utilisez les balises Code plutôt que des captures d'écran. Merci.
Dernière édition par E3DStef le 22 Mars 2018 11:38, édité 1 fois.
Raison : Mis les balises dans le titre du message

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6215
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: Projet BTS besoin d'aide

Message par boubouk50 » 20 Mars 2018 17:27

Je comprends pas ton code côté serveur:

Code : Tout sélectionner

dataserver = false;
while (dataserver == false) {
...
dataserver = true;
}
A quoi cela te sert de faire une boucle d'une condition que tu justifies juste avant et que tu remets juste après?
C'est pour éviter que la fonction soit appelée plusieurs fois en même temps? Dans ce cas, la condition doit être fausse lorsqu'on rentre dans la fonction.

Code : Tout sélectionner

if (dataserver) {
dataserver = false;
...
dataserver = true;
}
Par contre les données en concurrence (donc les dernières arrivées) ne seront pas traitées. Si tu veux qu'elles attendent, il te faudra passer par une coroutine qui yield une frame dans une boucle en attendant que ce soit traité.

Sinon en cas de conflit, là tel que tu l'as programmé, tu détruirais des gameObjects utilisés (donc impossible d'accéder -> erreur) ou déjà détruits (null donc erreur)
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

Répondre

Revenir vers « (C#) CSharp »