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


Golang RouteGuideClient.RouteChat方法代碼示例

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


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

示例1: runRouteChat

// runRouteChat receives a sequence of route notes, while sending notes for various locations.
func runRouteChat(client pb.RouteGuideClient) {
	notes := []*pb.RouteNote{
		{&pb.Point{0, 1}, "First message"},
		{&pb.Point{0, 2}, "Second message"},
		{&pb.Point{0, 3}, "Third message"},
		{&pb.Point{0, 1}, "Fourth message"},
		{&pb.Point{0, 2}, "Fifth message"},
		{&pb.Point{0, 3}, "Sixth message"},
	}
	stream, err := client.RouteChat(context.Background())
	if err != nil {
		grpclog.Fatalf("%v.RouteChat(_) = _, %v", client, err)
	}
	waitc := make(chan struct{})
	go func() {
		for {
			in, err := stream.Recv()
			if err == io.EOF {
				// read done.
				close(waitc)
				return
			}
			if err != nil {
				grpclog.Fatalf("Failed to receive a note : %v", err)
			}
			grpclog.Printf("Got message %s at point(%d, %d)", in.Message, in.Location.Latitude, in.Location.Longitude)
		}
	}()
	for _, note := range notes {
		if err := stream.Send(note); err != nil {
			grpclog.Fatalf("Failed to send a note: %v", err)
		}
	}
	stream.CloseSend()
	<-waitc
}
開發者ID:chancez,項目名稱:mantle,代碼行數:37,代碼來源:client.go


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