• 06 Juin 2026, 22:59:05


Auteur Sujet: Rapidité d'un public  (Lu 1144 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne scott1

  • *
  • Gangster
  • Messages: 1440
    • Voir le profil
Rapidité d'un public
« le: 11 Mars 2010, 13:38:29 »
Bonjour a tous, j'aimerais savoir lequel de ces 2 public est le plus rapide a s'exécuter.

public IsAPizzabike(carid)
{
if(carid >= 102 && carid <= 107)
{
return 1;
}
return 0;
}

public IsAPizzabike(carid)
{
new pveh = GetVehicleModel(carid);
if(pveh == 448)
{
return 1;
}
return 0;
}

Merci d'avance
Refait un Game mode a partir d'une page blanche



Mes partages:

Systeme de Radio avec Frequence Création

Ajouter des véhicule dans le LARP - Godfather Tuto

Anti Cheat "JunkBuster" traduit en FR Traduction

LARP Traduit FR, V0.3 Traduction

Hors ligne FuSion

  • Pawn coder
  • *
  • Grand Banditisme
  • for(new i = 0; i < INFINI; i++)
  • Messages: 888
    • Voir le profil
Re : Rapidité d'un public
« Réponse #1 le: 11 Mars 2010, 13:45:04 »
Je pense que le premier s'exutera plus vite que le deuxième mais quel importance, ils sont executés en quelques miliemes de secondes.

Hors ligne S!m

  • *
  • Messages: 2341
    • Voir le profil
Re : Rapidité d'un public
« Réponse #2 le: 11 Mars 2010, 15:14:29 »
Salut,

s'ils sont exécutés en quelques millisecondes c'est que ton serveur est en carton, normalement tu devrais pouvoir exécuté au minimum une centaine de fois par milliseconde....

cherche benchmark dans rechercher et tu trouvera des macro de test de fonctions (indice: ça se trouve dans Codes/scripts utiles)

++Sim++





Hors ligne Syg

  • Expert programmeur C/C++/PAWN
  • *
  • The GTAOnline Jesus
  • Messages: 3908
    • Voir le profil
Re : Rapidité d'un public
« Réponse #3 le: 11 Mars 2010, 17:09:06 »
La deuxième fonction est moins rapide car elle contient un appel à une fonction.
C'est donc la première qui sera plus rapide.
Mais la différence est très certainement non quantifiable.

D'après mes tests, il faut environs 100 ms pour exécuter 1 000 000 de fois la première fonction et 120 ms pour exécuter la seconde.
(Machine utilisée : Intel core 2 Duo 2.33 Ghz avec 2Go de mémoire)
Le différence d'exécution entre ces deux fonction est de 20/1 000 000 000 s (20 milliardièmes de seconde) en faveur de la première

Le seul problème avec le première c'est que comme elle se base sur l'ID d'un véhicule, il faut faire très attention lorsqu'on en rajoute ou qu'on en enlève sinon on risque de tout décalé.
De plus, cette fonction devra être modifiée si on rajoute ou enlève des PizzaBoys.

Et comme la différence de temps d'exécution est infime, je te conseille de prendre la deuxième fonction qui fonctionne dans tous les cas, peu importe l'ordre dans lequel sont crées les véhicules.

++
Syg
Courtesy of GtaManiac

Hors ligne Ssk

  • *
  • Lulu's Stunt - Le serveur stunt de Lulu !
  • Messages: 8154
    • Voir le profil
Re : Rapidité d'un public
« Réponse #4 le: 11 Mars 2010, 17:56:45 »
Voila la seconde fonction, qui est un tout petit peu améliorer =)

public IsAPizzabike(carid)
{
if(GetVehicleModel(carid) == 448)
{
return 1;
}
return 0;
}



Derrière tout programme se cache un programmeur, je considère le monde comme un programme.
Mon blog

Hors ligne S!m

  • *
  • Messages: 2341
    • Voir le profil
Re : Rapidité d'un public
« Réponse #5 le: 11 Mars 2010, 19:27:05 »
Salut,

on peut faire légèrement mieux mais moins lisible:

public IsAPizzabike(carid)
{
return (GetVehicleModel(carid) == 448);
}

je ne vois pas comment réduire d'avantage....

++Sim++





Hors ligne Ssk

  • *
  • Lulu's Stunt - Le serveur stunt de Lulu !
  • Messages: 8154
    • Voir le profil
Re : Re : Rapidité d'un public
« Réponse #6 le: 11 Mars 2010, 19:32:36 »
Salut,

on peut faire légèrement mieux mais moins lisible:

public IsAPizzabike(carid)
{
return (GetVehicleModel(carid) == 448);
}

je ne vois pas comment réduire d'avantage....

++Sim++

Bof ...

ça fonctionne mais ça renvoie des boolean (ça revient à la même chose mais si le gars veut qu'on retourne des nombres, vaut mieux faire des return 1 ou 0 ^^ )



Derrière tout programme se cache un programmeur, je considère le monde comme un programme.
Mon blog

Hors ligne FuSion

  • Pawn coder
  • *
  • Grand Banditisme
  • for(new i = 0; i < INFINI; i++)
  • Messages: 888
    • Voir le profil
Re : Re : Rapidité d'un public
« Réponse #7 le: 11 Mars 2010, 20:08:35 »
s'ils sont exécutés en quelques millisecondes c'est que ton serveur est en carton, normalement tu devrais pouvoir exécuté au minimum une centaine de fois par milliseconde....

Quand je disais ça c'est que c'est infiniment petit le labs de temps dans lequel s'exécute l'action et que j'avais pas les mots a utiliser  :P

Hors ligne scott1

  • *
  • Gangster
  • Messages: 1440
    • Voir le profil
Re : Rapidité d'un public
« Réponse #8 le: 11 Mars 2010, 22:05:48 »
Merci tout le monde  ! ça m'a bien aidé
Refait un Game mode a partir d'une page blanche



Mes partages:

Systeme de Radio avec Frequence Création

Ajouter des véhicule dans le LARP - Godfather Tuto

Anti Cheat "JunkBuster" traduit en FR Traduction

LARP Traduit FR, V0.3 Traduction