- Регистрация
- 23.12.2014
- Сообщения
- 14 427
- Благодарностей
- 5 453
- Баллы
- 113
Народ такая проблема. Сделал блек лист.
1)
2) Если True то уходим на паузу 5 сек и пробуем с новым User_ID.
3) Если False, то добавляю строку в локе, потом 5 сек и пункт 1.
Все это в многопотоке. Процессор грузит под 100%, аж так, что шаблон медленней работает.
Как снизить нагрузку на процессор? Может убрать лишние локи, проверки на существование файла?
Может БД использовать?
1)
C#:
lock (SyncObjects.ListSyncer)
{
IZennoList Names = project.Lists["BLACKLIST-USER"]; //привязываемся к списку
string Element = project.Variables["User_ID"].Value;
return Names.Contains(Element); // True/False
}
3) Если False, то добавляю строку в локе, потом 5 сек и пункт 1.
C#:
IZennoList Names = project.Lists["TEMP-PROXY"]; //привязываемся к списку
var url2 = project.Variables["result"].Value;
while(true)
{
lock(SyncObjects.ListSyncer)
{
if (url2 != "")
{
Names.Add(url2);
return "Ok";
}
}
}
Как снизить нагрузку на процессор? Может убрать лишние локи, проверки на существование файла?
Может БД использовать?