2016-12-01 6 views
0

У меня есть служба grpc, написанная на C#, которая имеет 2 вызова типа Start и Stop. Когда клиент вызывает Start (этот вызов занимает много времени), а затем Stop сервер обрабатывает запросы синхронно, в то время как grpc запустил 4 потока.Grpc: только один серверный поток обрабатывает все запросы

2016-12-01 18:55:14,199,INFO,grpc 2 (cq 2),0 parsing.c:659: HTTP:17:HDR:SVR: :path: /Service/Start 
2016-12-01 18:55:14,303 [grpc 2 (cq 2)] DEBUG [RPC:27] Start 
2016-12-01 18:55:14,822,INFO,grpc 0 (cq 0),0 parsing.c:659: HTTP:19:HDR:SVR: :path: /Service/Stop 
2016-12-01 18:55:33,661 [grpc 2 (cq 2)] DEBUG [RPC:27] Stop 

Не могли бы вы помочь мне понять, работает ли он в соответствии с конструкцией или, возможно, я пропустил какие-либо дополнительные настройки?

ответ

0

Он функционирует так, как было разработано, и вы должны использовать async/await для вызовов синхронизации, чтобы избежать блокировки очереди очереди завершения.