Avatar of rutledgj
rutledgj
 asked on

Vb.net Parallel foreach problem

I'm trying to do a Parallel.ForEach and can't figure out the correct syntax.

I have a list of Vendor objects (lstVendors).
I have a class (UpdateThread) that contains the function UpdateData(v as Vendor)

I want to do a Parallel.ForEach(lstVendors,  


Don't know where to go next. Any help on completing the for loop code?

Visual Basic.NET

Avatar of undefined
Last Comment
rutledgj

8/22/2022 - Mon
kaufmed

Is UpdateData a Shared method?
rutledgj

ASKER
it is a public method in another class
nepaluz

try this where currentVendor is one of the lstVendors
yu can see here too
Writting simple parallel for.each loops
Parallel.ForEach(lstVendors, Sub(currentVendor)


                                              End Sub)

Open in new window

All of life is about relationships, and EE has made a viirtual community a real community. It lifts everyone's boat
William Peck
rutledgj

ASKER
Ok but how do i call the UpdateData method in this example?
SOLUTION
kaufmed

Log in or sign up to see answer
Become an EE member today7-DAY FREE TRIAL
Members can start a 7-Day Free trial then enjoy unlimited access to the platform
Sign up - Free for 7 days
or
Learn why we charge membership fees
We get it - no one likes a content blocker. Take one extra minute and find out why we block content.
Not exactly the question you had in mind?
Sign up for an EE membership and get your own personalized solution. With an EE membership, you can ask unlimited troubleshooting, research, or opinion questions.
ask a question
SOLUTION
Log in to continue reading
Log In
Sign up - Free for 7 days
Get an unlimited membership to EE for less than $4 a week.
Unlimited question asking, solutions, articles and more.
ASKER CERTIFIED SOLUTION
Log in to continue reading
Log In
Sign up - Free for 7 days
Get an unlimited membership to EE for less than $4 a week.
Unlimited question asking, solutions, articles and more.
nepaluz

Actually, you will need to declare the new class inside the loop, aka
Parallel.ForEach(lstVendors, Sub(currentVendor)
                                    Dim NewX as New UpdateThread
                                    NewX.UpdateData(currentVendor)
                              End Sub)

Open in new window

Shahan Ayyub

Hi!

This will help you in finding the syntax of Parallel Foreach:
http://www.c-sharpcorner.com/UploadFile/vendettamit/8573/
Get an unlimited membership to EE for less than $4 a week.
Unlimited question asking, solutions, articles and more.
Shahan Ayyub

There is a correction at the end of the article mention in the link: Please have a look at that also.
rutledgj

ASKER
Both of these methods worked and you don't have to create a new instance of UpdateThread  in the loop. Just one instance will work.