Blocks until all work has completed execution after a shutdown request, or the timeout occurs,
or the current thread is interrupted, whichever happens first.
Returns true if all work has completed following shut down. Note that isTerminated is never
true unless either shutdown or shutdownNow was called first.
Initiates an orderly shutdown in which previously submitted work is finished, but no new work
will be accepted. Invocation has no additional effect if already shut down.
This method does not wait for previously submitted work to complete execution. Use
awaitTermination to do that.
shutdownNow()
publicvoidshutdownNow()
Attempts to stop all actively executing work and halts the processing of waiting work.
This method does not wait for actively executing work to terminate. Use awaitTermination to
do that.
There are no guarantees beyond best-effort attempts to stop processing actively executing
work. For example, typical implementations will cancel via Thread.interrupt(), so any task that
fails to respond to interrupts may never terminate.
[[["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-08-28 UTC."],[[["\u003cp\u003eThis webpage provides documentation for the \u003ccode\u003eGrpcTransportChannel\u003c/code\u003e class, which is an implementation of \u003ccode\u003eTransportChannel\u003c/code\u003e based on gRPC.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eGrpcTransportChannel\u003c/code\u003e class is part of the Google API client library for Java, as seen by the package path of its references \u003ccode\u003ecom.google.api.gax.grpc.GrpcTransportChannel\u003c/code\u003e, and the latest version of this documentation is \u003ccode\u003e2.63.1\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe class includes static methods like \u003ccode\u003ecreate\u003c/code\u003e, \u003ccode\u003egetGrpcTransportName\u003c/code\u003e, and \u003ccode\u003enewBuilder\u003c/code\u003e for creating instances and obtaining information about the transport.\u003c/p\u003e\n"],["\u003cp\u003eInstance methods, such as \u003ccode\u003eawaitTermination\u003c/code\u003e, \u003ccode\u003eclose\u003c/code\u003e, \u003ccode\u003egetChannel\u003c/code\u003e, and \u003ccode\u003egetTransportName\u003c/code\u003e, manage the channel's lifecycle and provide access to its properties.\u003c/p\u003e\n"],["\u003cp\u003eThere are many documented versions available, ranging from \u003ccode\u003e2.63.1\u003c/code\u003e down to \u003ccode\u003e2.7.1\u003c/code\u003e, showcasing a history of releases for this component.\u003c/p\u003e\n"]]],[],null,["# Class GrpcTransportChannel (2.69.0)\n\nVersion latestkeyboard_arrow_down\n\n- [2.69.0 (latest)](/java/docs/reference/gax/latest/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.68.2](/java/docs/reference/gax/2.68.2/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.67.0](/java/docs/reference/gax/2.67.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.66.0](/java/docs/reference/gax/2.66.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.65.0](/java/docs/reference/gax/2.65.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.63.1](/java/docs/reference/gax/2.63.1/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.62.0](/java/docs/reference/gax/2.62.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.61.0](/java/docs/reference/gax/2.61.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.60.0](/java/docs/reference/gax/2.60.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.59.1](/java/docs/reference/gax/2.59.1/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.58.0](/java/docs/reference/gax/2.58.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.57.0](/java/docs/reference/gax/2.57.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.55.0](/java/docs/reference/gax/2.55.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.54.1](/java/docs/reference/gax/2.54.1/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.53.0](/java/docs/reference/gax/2.53.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.52.0](/java/docs/reference/gax/2.52.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.51.0](/java/docs/reference/gax/2.51.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.50.0](/java/docs/reference/gax/2.50.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.49.0](/java/docs/reference/gax/2.49.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.48.1](/java/docs/reference/gax/2.48.1/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.47.0](/java/docs/reference/gax/2.47.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.46.1](/java/docs/reference/gax/2.46.1/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.45.0](/java/docs/reference/gax/2.45.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.43.0](/java/docs/reference/gax/2.43.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.42.0](/java/docs/reference/gax/2.42.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.41.0](/java/docs/reference/gax/2.41.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.39.0](/java/docs/reference/gax/2.39.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.38.0](/java/docs/reference/gax/2.38.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.37.0](/java/docs/reference/gax/2.37.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.36.0](/java/docs/reference/gax/2.36.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.35.0](/java/docs/reference/gax/2.35.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.34.1](/java/docs/reference/gax/2.34.1/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.33.0](/java/docs/reference/gax/2.33.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.32.1](/java/docs/reference/gax/2.32.1/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.31.1](/java/docs/reference/gax/2.31.1/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.30.1](/java/docs/reference/gax/2.30.1/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.24.0](/java/docs/reference/gax/2.24.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.23.3](/java/docs/reference/gax/2.23.3/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.22.0](/java/docs/reference/gax/2.22.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.21.0](/java/docs/reference/gax/2.21.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.20.1](/java/docs/reference/gax/2.20.1/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.19.6](/java/docs/reference/gax/2.19.6/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.18.7](/java/docs/reference/gax/2.18.7/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.17.0](/java/docs/reference/gax/2.17.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.16.0](/java/docs/reference/gax/2.16.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.15.0](/java/docs/reference/gax/2.15.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.14.0](/java/docs/reference/gax/2.14.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.13.0](/java/docs/reference/gax/2.13.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.12.2](/java/docs/reference/gax/2.12.2/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.11.0](/java/docs/reference/gax/2.11.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.10.0](/java/docs/reference/gax/2.10.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.9.0](/java/docs/reference/gax/2.9.0/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.8.1](/java/docs/reference/gax/2.8.1/com.google.api.gax.grpc.GrpcTransportChannel)\n- [2.7.1](/java/docs/reference/gax/2.7.1/com.google.api.gax.grpc.GrpcTransportChannel) \n\n public abstract class GrpcTransportChannel implements TransportChannel\n\nImplementation of TransportChannel based on gRPC. \n\nInheritance\n-----------\n\n[java.lang.Object](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html) \\\u003e GrpcTransportChannel \n\nImplements\n----------\n\n[TransportChannel](/java/docs/reference/gax/latest/com.google.api.gax.rpc.TransportChannel) \n\nInherited Members\n-----------------\n\n[Object.clone()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#clone--) \n[Object.equals(Object)](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#equals-java.lang.Object-) \n[Object.finalize()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#finalize--) \n[Object.getClass()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#getClass--) \n[Object.hashCode()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#hashCode--) \n[Object.notify()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#notify--) \n[Object.notifyAll()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#notifyAll--) \n[Object.toString()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#toString--) \n[Object.wait()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#wait--) \n[Object.wait(long)](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#wait-long-) \n[Object.wait(long,int)](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#wait-long-int-)\n\nStatic Methods\n--------------\n\n### create(ManagedChannel channel)\n\n public static GrpcTransportChannel create(ManagedChannel channel)\n\n### getGrpcTransportName()\n\n public static String getGrpcTransportName()\n\nThe name of the Grpc transport.\n\n### newBuilder()\n\n public static GrpcTransportChannel.Builder newBuilder()\n\nConstructors\n------------\n\n### GrpcTransportChannel()\n\n public GrpcTransportChannel()\n\nMethods\n-------\n\n### awaitTermination(long duration, TimeUnit unit)\n\n public boolean awaitTermination(long duration, TimeUnit unit)\n\nBlocks until all work has completed execution after a shutdown request, or the timeout occurs,\nor the current thread is interrupted, whichever happens first.\n\n### close()\n\n public void close()\n\n### getChannel()\n\n public Channel getChannel()\n\n### getEmptyCallContext()\n\n public GrpcCallContext getEmptyCallContext()\n\nReturns an empty [ApiCallContext](/java/docs/reference/gax/latest/com.google.api.gax.rpc.ApiCallContext) that is compatible with this `TransportChannel`.\n\n### getTransportName()\n\n public String getTransportName()\n\nThe name of the transport.\n\nThis string can be used for identifying transports for switching logic.\n\n### isDirectPath()\n\n public abstract boolean isDirectPath()\n\n### isShutdown()\n\n public boolean isShutdown()\n\nReturns true if this background resource has been shut down.\n\n### isTerminated()\n\n public boolean isTerminated()\n\nReturns true if all work has completed following shut down. Note that isTerminated is never\ntrue unless either shutdown or shutdownNow was called first.\n\n### shutdown()\n\n public void shutdown()\n\nInitiates an orderly shutdown in which previously submitted work is finished, but no new work\nwill be accepted. Invocation has no additional effect if already shut down.\n\nThis method does not wait for previously submitted work to complete execution. Use\nawaitTermination to do that.\n\n### shutdownNow()\n\n public void shutdownNow()\n\nAttempts to stop all actively executing work and halts the processing of waiting work.\n\nThis method does not wait for actively executing work to terminate. Use awaitTermination to\ndo that.\n\nThere are no guarantees beyond best-effort attempts to stop processing actively executing\nwork. For example, typical implementations will cancel via Thread.interrupt(), so any task that\nfails to respond to interrupts may never terminate."]]