public int IndexOf(Predicate predicate)
{
if (null == predicate)
{
throw new ArgumentNullException("predicate");
}
AcquireReaderLock();
try
{
for (int i=0; i<_list.Count; ++i)
{
if (predicate(_list[i]))
{
return i;
}
}
return -1;
}
finally
{
ReleaseReaderLock();
}
}