lock(SyncObjects.ListSyncer)
{
List<string> list = new List<string>(project.Lists["Список 1"].Except(project.Lists["Список 2"]).ToList());
project.Lists["Список 1"].Clear();
foreach (var item in list)
{
project.Lists["Список 1"].Add(item);
}
}
Попробуйте так:
На 2-х ядерном процессоре по 3 ГГц код выполняется меньше секунды.Код:lock(SyncObjects.ListSyncer) { List<string> list = new List<string>(project.Lists["Список 1"].Except(project.Lists["Список 2"]).ToList()); project.Lists["Список 1"].Clear(); foreach (var item in list) { project.Lists["Список 1"].Add(item); } }
В одном списке 1 млн. строк, во втором 500 тыс.