當前位置: 首頁>>代碼示例>>Golang>>正文


Golang Server.Stop方法代碼示例

本文整理匯總了Golang中google/golang.org/grpc.Server.Stop方法的典型用法代碼示例。如果您正苦於以下問題:Golang Server.Stop方法的具體用法?Golang Server.Stop怎麽用?Golang Server.Stop使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在google/golang.org/grpc.Server的用法示例。


在下文中一共展示了Server.Stop方法的5個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。

示例1: setUpSignerClient

func setUpSignerClient(t *testing.T, grpcServer *grpc.Server) (*client.NotarySigner, *grpc.ClientConn, func()) {
	socketFile, err := ioutil.TempFile("", "notary-grpc-test")
	require.NoError(t, err)
	socketFile.Close()
	os.Remove(socketFile.Name())

	lis, err := net.Listen("unix", socketFile.Name())
	require.NoError(t, err, "unable to open socket to listen")

	go grpcServer.Serve(lis)

	// client setup
	clientConn, err := grpc.Dial(socketFile.Name(), grpc.WithInsecure(), grpc.WithDialer(socketDialer))
	require.NoError(t, err, "unable to connect to socket as a GRPC client")

	signerClient := client.NewNotarySigner(clientConn)

	cleanup := func() {
		clientConn.Close()
		grpcServer.Stop()
		os.Remove(socketFile.Name())
	}

	return signerClient, clientConn, cleanup
}
開發者ID:jfrazelle,項目名稱:notary,代碼行數:25,代碼來源:rpc_and_client_test.go

示例2: waitShutdown

func waitShutdown(rpcSrv *grpc.Server, apiSrv *server.ApiServer) {
	sigCh := make(chan os.Signal)
	signal.Notify(sigCh, os.Interrupt, os.Kill)

	// Block until a signal is received or we got an error
	select {
	case signal := <-sigCh:
		log.Printf("Got signal %s, waiting for shutdown...", signal)
		rpcSrv.Stop()
		apiSrv.Shutdown()
		return
	}
}
開發者ID:hi-trust,項目名稱:friendfeed,代碼行數:13,代碼來源:server.go

示例3: ListenAndServeGRPC

// ListenAndServeGRPC creates a listener and serves the specified grpc Server
// on it, closing the listener when signalled by the stopper.
func ListenAndServeGRPC(stopper *stop.Stopper, server *grpc.Server,
	addr net.Addr) (net.Listener, error) {
	ln, err := net.Listen(addr.Network(), addr.String())
	if err != nil {
		return ln, err
	}

	stopper.RunWorker(func() {
		<-stopper.ShouldDrain()
		server.Stop()
	})

	stopper.RunWorker(func() {
		FatalIfUnexpected(server.Serve(ln))
	})
	return ln, nil
}
開發者ID:GitGoldie,項目名稱:cockroach,代碼行數:19,代碼來源:net.go

示例4: tearDown

func tearDown(s *grpc.Server, cc *grpc.ClientConn) {
	cc.Close()
	s.Stop()
}
開發者ID:ELMERzark,項目名稱:grpc-go,代碼行數:4,代碼來源:end2end_test.go

示例5: TestDisplay

func TestDisplay(t *testing.T) {
	var tCtx context.Context
	tests := []struct {
		ctx       context.Context
		query     Query
		cfg       *Config
		generator generator
		err       error
	}{{
		ctx: tCtx,
		query: Query{
			Target: "test",
		},
		cfg: &Config{},
		err: fmt.Errorf("grpc: no transport security set (use grpc.WithInsecure() explicitly or set credentials)"),
	}, {
		ctx: tCtx,
		query: Query{
			Target: "test",
		},
		cfg: nil,
		err: fmt.Errorf("cfg must not be nil"),
	}, {
		ctx: tCtx,
		query: Query{
			Target: "localhost",
			DialOptions: []grpc.DialOption{
				grpc.WithInsecure(),
			},
		},
		cfg: &Config{},
		err: fmt.Errorf("query target must be specified"),
	}, {
		ctx: tCtx,
		query: Query{
			Target: "localhost",
			DialOptions: []grpc.DialOption{
				grpc.WithInsecure(),
			},
			Queries: [][]string{
				[]string{"foo"},
			},
		},
		cfg: &Config{},
		generator: NewFixedGenerator(ocpb.Path{
			Element: []string{"foo"},
		}, ocpb.Value{
			Value: []byte("42"),
		}),
	}}

	for _, tt := range tests {
		var s *grpc.Server
		var ft *fakeTarget
		if tt.query.Target == "localhost" {
			var err error
			s, ft, tt.query.Target, err = startLocalServer()
			if tt.generator != nil {
				ft.RegisterGenerator(tt.generator)
			}
			if err != nil {
				t.Fatal("failed to start server")
			}
			defer s.Stop()
		}
		t.Logf("test Display(%+v, %+v, %+v)", tt.ctx, tt.query, tt.cfg)
		if tt.cfg != nil {
			tt.cfg.Display = fakeDisplayer(ft, t)
		}
		err := Display(context.Background(), tt.query, tt.cfg)
		if tt.err != nil && err != nil && tt.err.Error() != err.Error() {
			t.Errorf("failed Display(%+v, %+v, %+v): got %s, want %s", tt.ctx, tt.query, tt.cfg, err, tt.err)
		}
	}
}
開發者ID:openconfig,項目名稱:reference,代碼行數:75,代碼來源:query_test.go


注:本文中的google/golang.org/grpc.Server.Stop方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。