The following code, in file sdk/src/trace/tracer_provider.cc:
bool TracerProvider::Shutdown() noexcept
{
return context_->Shutdown();
}
does not take a timeout parameter.
TracerProvider::Shutdown() will block in-definitively if unsent spans are present.
This prevents an application to shutdown opentelemetry-cpp.