У меня есть программа, которая будет хранить некоторые данные о сетевой активности с некоторых серверов. Для скорости я создам приложение, чтобы сделать каждый запрос в отдельном потоке и поместить результат в общий словарь, где ключ является идентификатором сервера, а объект является классом результатов.Многопоточный дизайн
Однако эти ответы с сервера должны сохраняться каждые 10 минут в БД. Я не знаю, есть ли у меня какая-то хорошая идея, как это решить. Таким образом, какой-то ввод будет отличным.
Что я имею в виду, это заблокировать словарь результатов и сделать глубокий клон результата и начать анализировать результат в другом потоке, который просто поместил его в БД.
Как я могу свести к минимуму блокировку от request threads
, чтобы они могли начать добавлять свежие результаты как можно скорее, но все же читать из словаря?
Просто поменяйте словарь на новый. Очень быстро, не забудьте запереть. –