Я согласен, что принудительная модель, в которой клиент инициирует действие, будет работать лучше в долгосрочной перспективе, поэтому сервер должен работать только тогда, когда действительно есть чем заняться, вместо того, чтобы постоянно опрашивать всех клиентов.
Клиент может вставлять запросы в очередь, а сервер обрабатывает их.Таким образом, вы можете контролировать, сколько запросов сервер может обрабатывать параллельно, не мешая другим.
BlockingCollection - это новый класс, представленный в .Net 4, специально разработанный для этого типа работы. Эта очень хорошая статья о том, как ее использовать.Если вы новичок в параллельном кодировании .Net, вы, вероятно, хотите прочитать всю серию, очень хорошее чтение.
ГДж