2011-01-17 4 views

ответ

23

Как это:

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

Это будет быстрее, чем эквивалентные LINQ вызовы с Select и ToArray, который, вероятно, будет - ответил вскоре после этого.

+0

+1: Красиво, просто красиво –

+0

Спасибо, ты потрясающий. Не знал, что вы можете это сделать. –

+0

+1 и LOL w.r.t. вызовы 'Linq' - как тот, который я собирался опубликовать. –

5

Linq будет что-то вроде этого:

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

lol @ SLaks. Хорошее предчувствие. +1 для вас. –

5

Или использовать Parallel.For использовать несколько потоков.

+0

Это интересно. Я попробую. –

+2

Если конструктор 'Effect' работает очень медленно, это не будет стоить того. – SLaks

+1

Ну, это зависит от вашего определения "элегантный" –

Смежные вопросы