Bonjour !
Ce code permet à partir d'une base, de faire des combinaisons de strings.
Je cherche à améliorer la vitesse des combinaisons, en fonction du micro-processeur.
Actuellement, ce programme ne peut utiliser que la charge d'un seul coeur, et je ne vois pas comment l'optimiser en multi-thread ?
Merci.
Source / Exemple :
// déclarer myCombi en variable global
var
myCombi: String;
procedure TFMain.incr(alpha:String;base:String;where:Integer);
var
myPos: Integer;
begin
if not (alpha=EmptyStr) then begin
if (alpha[where]=chr(0)) then begin
myCombi := myCombi + base[1];
end else begin
myPos := pos(alpha[where],base);
Inc(myPos);
if (myPos>Length(base)) then begin
alpha[where] := base[1];
myCombi := alpha;
incr(myCombi,base,where-1);
end else begin
alpha[where] := base[myPos];
myCombi := alpha;
end;
end;
end else myCombi := base[1];
end;
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.