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

SDL Discussion :

Thread ou pas Thread ?


Sujet :

SDL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut Thread ou pas Thread ?
    Bonjour !


    Voià, dans mon projet de jeu et en cours de développement d'une petite API et un petit moteur, je me pose soudain quelques questions !

    J'avais pour idée de faire un sorte de Scheduler de rendu régi bien sûr pas une liste chaînée comme il se doit. Ce module permettrais de gérer de façon totalement autonome le rendu des objets qu'on lui injectes dans sa liste tout en prennant en compte le délais de rafraîchissement de chacun d'eux et le supprimerais en cas de besoin (ex: la mort d'un ennemi).

    Jusqu'ici l'idée paraît pas si mal et j'en suis pas peu fier Je me pose tout de même quelques questions :

    1. Un Thread est-il mieux pour ce genre de chose ?
    2. Ormis le fait de ne pas oublier les verrous au bons endroits, quelles serait grosso modo la différence d'utilisation en ressource et de perfomance entre la méthode Thread et sans Thread ?



    Merci bien
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  2. #2
    Expert confirmé

    Avatar de fearyourself
    Homme Profil pro
    Ingénieur Informaticien Senior
    Inscrit en
    Décembre 2005
    Messages
    5 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Ingénieur Informaticien Senior
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2005
    Messages : 5 121
    Par défaut
    Citation Envoyé par Franck.H
    Jusqu'ici l'idée paraît pas si mal et j'en suis pas peu fier
    Je suis d'accord sur la solution ca me semble pas mal !

    1. Un Thread est-il mieux pour ce genre de chose ?
    2. Ormis le fait de ne pas oublier les verrous au bons endroits, quelles serait grosso modo la différence d'utilisation en ressource et de perfomance entre la méthode Thread et sans Thread ?
    Ca dépend de comment tu le gères. La question thread-pas de thread est difficile à répondre. Généralement, si on peut, il vaut mieux faire deux versions et comparer.

    L'expérience montre que certains threads vont facilités l'implémentation mais si le programme passe son temps à gérer des verrous, cela ne sera pas optimal.

    Jc

  3. #3
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Citation Envoyé par fearyourself
    L'expérience montre que certains threads vont facilités l'implémentation mais si le programme passe son temps à gérer des verrous, cela ne sera pas optimal.
    Bin toutes les coordonnées joueur et des ennemis qui sont tout le temps mis à jour, je pense que déjà là il va passer sont temps à prendre et libérer le verrou
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  4. #4
    Expert confirmé

    Avatar de fearyourself
    Homme Profil pro
    Ingénieur Informaticien Senior
    Inscrit en
    Décembre 2005
    Messages
    5 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Ingénieur Informaticien Senior
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2005
    Messages : 5 121
    Par défaut
    Citation Envoyé par Franck.H
    Bin toutes les coordonnées joueur et des ennemis qui sont tout le temps mis à jour, je pense que déjà là il va passer sont temps à prendre et libérer le verrou
    Effectivement.

    De toute facon pour ce genre de jeu, je ne pense pas que des threads séparés rendu/gestion des objets soient vraiment nécessaire. Mais avec une bonne gestion des verrous, cela pourrait donner quelque chose de sympa.

    Jc

  5. #5
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Citation Envoyé par fearyourself
    Effectivement.

    De toute facon pour ce genre de jeu, je ne pense pas que des threads séparés rendu/gestion des objets soient vraiment nécessaire. Mais avec une bonne gestion des verrous, cela pourrait donner quelque chose de sympa.

    Jc
    En fait ce n'est pas directement le jeu mais un petit moteur plus ou moins generique en 2D avec une petite API, autant faire les choses correctement J'envisage de l'utiliser pour d'autres futurs projets
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  6. #6
    Expert confirmé

    Avatar de fearyourself
    Homme Profil pro
    Ingénieur Informaticien Senior
    Inscrit en
    Décembre 2005
    Messages
    5 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Ingénieur Informaticien Senior
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2005
    Messages : 5 121
    Par défaut
    Citation Envoyé par Franck.H
    En fait ce n'est pas directement le jeu mais un petit moteur plus ou moins generique en 2D avec une petite API, autant faire les choses correctement J'envisage de l'utiliser pour d'autres futurs projets
    Ah alors pour un cas plus général, je pense qu'il faudrait viser le multi-thread si on vise haut. Par contre, cela va forcément compliquer la donne.

    Le plus simple serait alors sûrement de faire un lock/unlock pour chaque modification de l'objet. Mais cela va effectivement coûter beaucoup plus en terme de ressources.

    Il faudrait trouver une solution plus light pour ne pas devoir faire un lock/unlock pour chaque objet.

    Enfin, comme toujours, je partirais sur une solution de lock/unlock pour chaque objet et si les performances sont vraiment lamentable, j'aviserais. Si cela se trouve, ce ne sera pas très grave.

    Jc

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Thread ou pas Thread
    Par jadey dans le forum Général Java
    Réponses: 13
    Dernier message: 22/02/2014, 00h38
  2. Threading ou pas threading?si oui, comment?
    Par nanettemontp dans le forum Windows
    Réponses: 59
    Dernier message: 10/10/2007, 10h55
  3. threads pas Thread ! (1 tte tite question)
    Par lagra3 dans le forum Langage
    Réponses: 3
    Dernier message: 11/08/2006, 12h28
  4. [blem C++ thread ou pas threads]
    Par fastzombi dans le forum Threads & Processus
    Réponses: 2
    Dernier message: 28/10/2005, 23h09
  5. [THREAD][DAEMON]Pas bien compris....
    Par XristofGreek dans le forum Concurrence et multi-thread
    Réponses: 2
    Dernier message: 24/09/2004, 13h28

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