private void DoBulkMove(int[] indices, int room)
{
ManualResetEvent[] doneEvents = new ManualResetEvent[indices.Length];
int i = 0;
foreach (int index in indices)
{
doneEvents[i] = new ManualResetEvent(false);
ThreadPool.QueueUserWorkItem(DoBulkMoveCallback, new BulkMoveArg(index, room, doneEvents[i]));
i++;
//DoPathfind(index, room);
}
WaitHandle.WaitAll(doneEvents);
}