I think I figured it out. gRPC is not ignoring the pool size. I added some logging and with pool_size set to 4 there are only 4 parallel requests handled by gRPC. The other threads are not handling requests.My question still stands. Why gRPC needs those extra threads?