Click here to Skip to main content
15,913,836 members
Home / Discussions / C#
   

C#

 
GeneralParallel.For Issue Pin
Bassam Abdul-Baki6-Apr-11 5:12
professionalBassam Abdul-Baki6-Apr-11 5:12 
GeneralRe: Parallel.For Issue Pin
David19876-Apr-11 5:19
David19876-Apr-11 5:19 
GeneralRe: Parallel.For Issue Pin
Bassam Abdul-Baki6-Apr-11 5:25
professionalBassam Abdul-Baki6-Apr-11 5:25 
AnswerRe: Parallel.For Issue Pin
Luc Pattyn6-Apr-11 5:25
sitebuilderLuc Pattyn6-Apr-11 5:25 
GeneralRe: Parallel.For Issue Pin
Bassam Abdul-Baki6-Apr-11 5:29
professionalBassam Abdul-Baki6-Apr-11 5:29 
GeneralRe: Parallel.For Issue Pin
David19876-Apr-11 5:31
David19876-Apr-11 5:31 
GeneralRe: Parallel.For Issue Pin
Luc Pattyn6-Apr-11 6:32
sitebuilderLuc Pattyn6-Apr-11 6:32 
GeneralRe: Parallel.For Issue Pin
BobJanova6-Apr-11 6:31
BobJanova6-Apr-11 6:31 
Yep, it's the add to the collection that's causing the problem. I'm guessing this is a vast oversimplification because what's posted there is not worth parallelising anyway.

Assuming the stuff inside the loop (calculating what's to be put in the list) is the expensive part, have a thread-local list (a local variable to the lambda) and merge them all at the end.

If it's actually adding millions of simple things to a list then you'll need to be cleverer about how you put things in there, for example creating an array large enough for everything beforehand and interleaving the results into well defined indices so they can't collide.
GeneralRe: Parallel.For Issue Pin
AspDotNetDev6-Apr-11 7:07
protectorAspDotNetDev6-Apr-11 7:07 
GeneralRe: Parallel.For Issue Pin
Bassam Abdul-Baki6-Apr-11 14:13
professionalBassam Abdul-Baki6-Apr-11 14:13 
GeneralRe: Parallel.For Issue Pin
Luc Pattyn6-Apr-11 5:24
sitebuilderLuc Pattyn6-Apr-11 5:24 
GeneralRe: Parallel.For Issue Pin
Bassam Abdul-Baki6-Apr-11 5:27
professionalBassam Abdul-Baki6-Apr-11 5:27 
AnswerRe: Parallel.For Issue Pin
Luc Pattyn6-Apr-11 5:36
sitebuilderLuc Pattyn6-Apr-11 5:36 
GeneralRe: Parallel.For Issue Pin
Bassam Abdul-Baki6-Apr-11 5:40
professionalBassam Abdul-Baki6-Apr-11 5:40 
GeneralRe: Parallel.For Issue Pin
Mirko19806-Apr-11 10:21
Mirko19806-Apr-11 10:21 
GeneralRe: Parallel.For Issue Pin
Bassam Abdul-Baki6-Apr-11 14:14
professionalBassam Abdul-Baki6-Apr-11 14:14 
QuestionRundom function Pin
treuveni6-Apr-11 4:48
treuveni6-Apr-11 4:48 
AnswerRe: Rundom function Pin
PIEBALDconsult6-Apr-11 4:53
mvePIEBALDconsult6-Apr-11 4:53 
GeneralRe: Rundom function Pin
Thomas Krojer6-Apr-11 4:54
Thomas Krojer6-Apr-11 4:54 
GeneralRe: Rundom function Pin
PIEBALDconsult6-Apr-11 4:57
mvePIEBALDconsult6-Apr-11 4:57 
GeneralRe: Rundom function Pin
Luc Pattyn6-Apr-11 5:28
sitebuilderLuc Pattyn6-Apr-11 5:28 
AnswerRe: Rundom function Pin
Pete O'Hanlon6-Apr-11 4:53
mvePete O'Hanlon6-Apr-11 4:53 
GeneralRe: Rundom function Pin
treuveni6-Apr-11 5:13
treuveni6-Apr-11 5:13 
GeneralRe: Rundom function Pin
Pete O'Hanlon6-Apr-11 5:16
mvePete O'Hanlon6-Apr-11 5:16 
GeneralRe: Rundom function Pin
riced6-Apr-11 5:21
riced6-Apr-11 5:21 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.