Guidance for implementors:
This method doesn't wait for all calls on this channel to finish (nor does
it have to explicitly cancel all outstanding calls). It is user's responsibility to make sure
all the calls on this channel have finished (successfully or with an error)
before shutting down the channel to ensure channel shutdown won't impact
the outcome of those remote calls.
ShutdownAsyncCore()
protected virtual Task ShutdownAsyncCore()
Provides implementation of a non-virtual public member.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[[["\u003cp\u003e\u003ccode\u003eChannelBase\u003c/code\u003e is an abstract base class for gRPC channels, representing long-lived connections to remote servers.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eChannelBase\u003c/code\u003e constructor initializes a connection to a specified target host, requiring a target string.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eTarget\u003c/code\u003e property retrieves the original target string used during the channel's creation.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eCreateCallInvoker()\u003c/code\u003e creates a new \u003ccode\u003eCallInvoker\u003c/code\u003e for the channel, enabling remote call invocation.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eShutdownAsync()\u003c/code\u003e method gracefully shuts down the channel, and users should ensure all calls on the channel are finished before this to avoid issues.\u003c/p\u003e\n"]]],[],null,[]]