MustEmbedUnimplemented* gRPC 中用於前向相容性的方法
grpc-go*方法來確保伺服器實作中的前向相容性。以前,伺服器實作可以註冊服務,而無需實作原型定義中定義的所有方法。這導致添加到原型的新方法會由於伺服器中缺少實作而導致編譯時錯誤。 使用MustEmbedUnimplemented
*方法:
要停用程式碼產生中的前向相容性:
// Implements gRPC FooBarServiceServer type FooBarService struct { grpc.UnsafeFooBarServiceServer // Opt out of forward compatibility // other fields }
mustEmbedUnimplemented
protoc --go-grpc_out=require_unimplemented_servers=false:.
mustEmbedUnimplemented*伺服器實作始終保持最新的原型定義,防止潛在的不一致。它提供了一種優雅的方式來添加新方法,而不會破壞現有程式碼,同時仍然保持向後相容性。
以上是gRPC-go 中的「mustEmbedUnimplemented*」如何確保伺服器實現的前向相容性?的詳細內容。更多資訊請關注PHP中文網其他相關文章!