Source File
grpcprocess.go
Belonging Package
go.pact.im/x/grpcprocess
// Package grpcprocess provides [process.Runner] wrapper for [grpc.Server].package grpcprocessimport ()// Server returns a [process.Runner] instance for the given gRPC server and// network listener.func ( *grpc.Server, net.Listener) process.Runner {return process.Leaf(func( context.Context) error {// TODO: consider injecting base context into gRPC’s// internal/transport/http2_server.go NewServerTransport.return .Serve()},func( context.Context) error {:= make(chan struct{})go func() {.GracefulStop()close()}()select {case <-.Done():// Note that Stop interrupts GracefulStop when// called concurrently..Stop()<-case <-:}return nil},)}
The pages are generated with Golds v0.7.6. (GOOS=linux GOARCH=amd64)