OVH Cloud OVH Cloud

Est-ce possible d'optimiser cette méthode ?

4 réponses
Avatar
Steeve
Bonjour,

Est-ce possible d'optimiser cette m=E9thode ? C,est la m=E9thode qui est
appel=E9 le plus souvent dans mon application (r=E9sultat de Sampling
Profiling dans Visual Studio Performance report)

J'utilise cette m=E9thode pour trouver un =E9l=E9ment "Node" dans un
"List<Node>".
(Note: JobNumber est un int)

public bool NodeMachineJobPredicate(Node N)
{
if (string.Equals(_Machine,N.Machine) &&
_Job.JobNumber =3D=3D N.Job.JobNumber)
{
return true;
}
else
{
return false;
}
}

Thanks
Steeve

4 réponses

Avatar
Michael Moreno
Bonjour,

public bool NodeMachineJobPredicate(Node N)
{
return _Job.JobNumber == N.Job.JobNumber


&& _Machine == N.Machine;
}




devrait deja etre significativement plus rapide.

--

----------------------------------------------

http://michael.moreno.free.fr/
Avatar
Faust
je vais peut-être dire une bétise, mais manifestement, la fonction
compare un Node avec un autre Node
du coup n'existe-t-il pas une méthode (de classe?) Equals qu'il
pourrait être bon de surcharger et qui éviterait l'écriture de cette
méthode?

/_Michael Moreno_ a énoncé/ :
Bonjour,



public bool NodeMachineJobPredicate(Node N)
{
return _Job.JobNumber == N.Job.JobNumber


&& _Machine == N.Machine;
}






devrait deja etre significativement plus rapide.



--
*/Teträm/*
http://www.tetram.org

« Chérie, viens à table, le murloc va refroidir ! »
Avatar
Casimir
Salut,
Il pourrait faire un polymorphisme sur les méthodes Equals et HashCode de sa
classe Node. (public override bool Equals(Object obj){...}). Du coup la
méthode NodeMachineJobPredicate il a : return this.Equals(N)

"Faust" wrote:

je vais peut-être dire une bétise, mais manifestement, la fonction
compare un Node avec un autre Node
du coup n'existe-t-il pas une méthode (de classe?) Equals qu'il
pourrait être bon de surcharger et qui éviterait l'écriture de cette
méthode?

/_Michael Moreno_ a énoncé/ :
> Bonjour,

>> public bool NodeMachineJobPredicate(Node N)
>> {
>> return _Job.JobNumber == N.Job.JobNumber
> && _Machine == N.Machine;
>> }
>>

> devrait deja etre significativement plus rapide.

--
*/Teträm/*
http://www.tetram.org

« Chérie, viens à table, le murloc va refroidir ! »





Avatar
Steeve
Merci pour vos conseils.

Je vais les mettre en pratique.

Casimir a écrit :

Salut,
Il pourrait faire un polymorphisme sur les méthodes Equals et HashCode de sa
classe Node. (public override bool Equals(Object obj){...}). Du coup la
méthode NodeMachineJobPredicate il a : return this.Equals(N)

"Faust" wrote:

> je vais peut-être dire une bétise, mais manifestement, la fonction
> compare un Node avec un autre Node
> du coup n'existe-t-il pas une méthode (de classe?) Equals qu'il
> pourrait être bon de surcharger et qui éviterait l'écriture de ce tte
> méthode?
>
> /_Michael Moreno_ a énoncé/ :
> > Bonjour,
>
> >> public bool NodeMachineJobPredicate(Node N)
> >> {
> >> return _Job.JobNumber == N.Job.JobNumber
> > && _Machine == N.Machine;
> >> }
> >>
>
> > devrait deja etre significativement plus rapide.
>
> --
> */Teträm/*
> http://www.tetram.org
>
> « Chérie, viens à table, le murloc va refroidir ! »
>
>
>