We are building a cross-platform app that consists of several interdependent processes that interact with each other.
One process starts a gRPC server and then spawns a child process. After having exchanged a few gRPC calls with yet another process it needs to close, but is unable to close the server gracefully - ShutdownAsync task never completes until the child process exits - but we need it to stay up. Details regarding child processes: - The child that blocks the shutdown doesn't use gRPC. - The peers for the interaction are also spawned by the main process, but are closed by the time the main process starts closing. - Children are spawned using .NET System.Diagnostics.Process API. If the latter is replaced with CreateProcess P/Invoke with inheritHandles=false, the problem disappears, but that would be a work-around, not the solution, assuming we are aiming for cross-platform code. Could this be the same issue as the "fork() not supported" issue in Python version? Does it mean that out scenario is not supported too? -- You received this message because you are subscribed to the Google Groups "grpc.io" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/grpc-io. To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/30199c91-d6d4-4006-9320-e94afce179d4%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
