2011-01-17 6 views

Antwort

23

So:

this.Effects = Array.ConvertAll(image.Effects, e => new Effect(e)); 

Dies wird schneller sein als das Äquivalent LINQ mit Select und ToArray Anrufe, die wahrscheinlich sein wird, antwortete kurz darauf.

+0

+1: Schön, einfach schön –

+0

Danke, du bist erstaunlich. Ich wusste nicht, dass du das kannst. –

+0

+1 und LOL w.r.t. die 'Linq'-Anrufe - wie die, die ich gerade posten wollte. –

5

Linq würde wie folgt sein:

this.Effects = image.Effects.Select(x => new Effect(x)).ToArray(); 
+6

lol @ SLaks. Nette Vorahnung. +1 für dich. –

5

Oder verwenden Sie die Parallel.For mehrere Threads zu verwenden.

+0

Das ist interessant. Ich werde es versuchen. –

+2

Wenn der 'Effect'-Konstruktor nicht sehr langsam ist, wird es sich nicht lohnen. – SLaks

+1

Nun, es hängt von Ihrer Definition von "elegant" ab –

Verwandte Themen