views:

1078

answers:

2

I am currently getting exceptions when modifying an IBindingList on multiple threads. Does anyone have a threadsafe version before I write my own?

+3  A: 

I think you'll find this an incredibly difficult task. The easier path would be to prevent multiple-thread access with a lock:

void AddItemToList(object o)
{
    lock(myBindingList)
    {
        myBindingList.Add(o);
    }
}

Look at the lock statement docs for more info.

Ben Straub
Shouldn't that be lock (_mySyncObject)?
ilitirit
A: 

Only just found this post... do you mean like this?

Marc Gravell
Bit of a shallow implementation. What about all the other zillions of methods that would need to be syncrononized (not least of which: GetEnumerator())?
piers7