138 / 138 / 53
Регистрация: 14.06.2016
Сообщений: 467
|
|||||||||||
1 | |||||||||||
.NET 4.x Асинхронность?17.08.2017, 23:10. Показов 562. Ответов 1
Метки нет (Все метки)
Уже как то создавал подобную тему, но моя текущая реализация меня не устраивает чуть более чем полностью, создам новую.
Есть у меня некая сущность клиента. В каждом клиенте, на протяжении всей его жизни есть штук 10-15 фоновых сервисов. сервисы запускаются так
Собственно, как бы организовать это лучше, чем есть? В идеале мне видится так - на клиент 1-2 рабочих потока, но загруженных по максимуму, т.е. во время ожидания выполняется другая задача. Вариант с ThreadPool как я понял не подойдет, поскольку пока поток находится в состоянии сна, он считается занятым.
0
|
17.08.2017, 23:10 | |
Ответы с готовыми решениями:
1
Потоки. Асинхронность Асинхронность в VS2010 Асинхронность без многопоточности Linq to Entities. Вернуть асинхронность |
263 / 224 / 108
Регистрация: 09.12.2015
Сообщений: 652
|
||||||
18.08.2017, 00:00 | 2 | |||||
Я бы сделал так:
не запускал был сразу все сервисы, как кучу долгоживущих задач, а запустил бы во вторичном потоке всего одну долгоживущую задачу, которая в цикле будет опрашивать каждый сервис на предмет необходимости выполнить что-что. И когда такая необходимость появляется - то запускать сервис, как новую задачу. Получается, что во вторичном потоке всегда живёт сканер и "запускатор" сервисов, который запускает требуемые сервисы, как отдельные задачи только по необходимости. Когда "запускатор" запустит сервис, тот возьмёт свободный поток из пула потоков, отработает, и вернёт его обратно. Добавлено через 23 минуты Причём сам "запускатор" запустить с такой опцией:
0
|
18.08.2017, 00:00 | |
18.08.2017, 00:00 | |
Помогаю со студенческими работами здесь
2
Как правильно понять асинхронность? Ещё раз про асинхронность Callback с сайта, асинхронность и прочее Для чего в этой программе асинхронность? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |