У меня многопоточное приложение. Каждый поток будет отвечать за загрузку данных в базу данных SQL. Мой вопрос в том, что это правильное решение для этого? Каждый поток должен открыть свое собственное новое соединение db, или для создания базы данных должен использоваться какой-то одноэлементный шаблон. Или, пожалуйста, дайте мне знать, если есть какой-либо другой лучший подход для этого. Любой образец кода будет высоко оценен.Соединения базы данных C#/SQLServer в многопоточной среде
ответ
Вам не нужно открывать несколько подключений для одновременного вызова службы WCF. Все, что вам нужно сделать, это использовать асинхронный способ его вызова. Вы можете, например, использовать Parrallel.ForEach() вместо создания собственных потоков.
public void UploadData(List<Data> allDataToUpload)
{
Parallel.ForEach(allDataToUpload, data =>
{
_yourService.Upload(data);
});
}
Кроме того, если вы не очень хорошо знакомы с резьбой, я предлагаю, чтобы использовать все новые инструменты, предоставляемые Microsoft, так как .net 4.5, как в асинхронном, ждут и библиотеки задач вместо управления собственные темы.
Дорогой Ronan благодарит за ваш ответ. Я немного изменил свой вопрос. Я говорил о кодах дБ. – user3056239
Дорогой Ронан благодарит за ваш ответ. Я немного изменил свой вопрос. Я говорил о кодах дБ. Но ваш ответ затронул мою другую проблему. Пожалуйста, ознакомьтесь с обновленным описанием и помогите мне в этом. – user3056239
- 1. Управление базой данных sqlite в многопоточной среде
- 2. Application Design с вызовом базы данных в многопоточной среде
- 3. Singleton в многопоточной среде
- 4. записи данных в массиве в многопоточной среде
- 5. zerorpc в многопоточной среде?
- 6. Shiro в многопоточной среде
- 7. Деструктор в многопоточной среде?
- 8. rockdb в многопоточной среде
- 9. Куча в многопоточной среде
- 10. BufferedReader в многопоточной среде
- 11. Создание UID в многопоточной и многопоточной среде
- 12. Глобальное поведение данных в многопоточной среде, C++
- 13. Необходимость id_callback в многопоточной среде?
- 14. Инициализация EntityManagerFactory в многопоточной среде
- 15. Использование sqlite в многопоточной среде
- 16. Обновления Singleton в многопоточной среде
- 17. Блокировка документов в многопоточной среде
- 18. Проблемы с использованием Mysql ++ в многопоточной среде
- 19. Как использовать uv_accept в многопоточной среде?
- 20. Перехват Ninject в многопоточной среде
- 21. Функция mkdirs() в многопоточной среде
- 22. Эти указатели в многопоточной среде
- 23. Код последовательности в многопоточной среде
- 24. время выполнения в многопоточной среде
- 25. Jain SIP в многопоточной среде
- 26. Использование TraceSource в многопоточной среде
- 27. Использование HashMap в многопоточной среде
- 28. улавливающие сигналы в многопоточной среде
- 29. Переменные переменных в многопоточной среде
- 30. Android ResultReceiver в многопоточной среде
Я предлагаю вам создать новый 'SqlConnection' во всех ваших потоках, поскольку SQL-сервер и DBProvider будут использовать пул соединений, который будет работать быстрее, чем ваш код. – VMAtm