#include <grpc/support/port_platform.h>
#include "src/core/lib/event_engine/thread_pool.h"
#include <atomic>
#include <memory>
#include <utility>
#include "absl/base/attributes.h"
#include "absl/time/clock.h"
#include "absl/time/time.h"
#include <grpc/support/log.h>
#include "src/core/lib/event_engine/thread_local.h"
#include "src/core/lib/gprpp/thd.h"
#include "src/core/lib/gprpp/time.h"
namespace grpc_event_engine {
namespace experimental {
void ThreadPool::StartThread(StatePtr state, StartThreadReason reason) { … }
void ThreadPool::ThreadFunc(StatePtr state) { … }
bool ThreadPool::Queue::Step() { … }
ThreadPool::ThreadPool() { … }
bool ThreadPool::IsThreadPoolThread() { … }
void ThreadPool::Quiesce() { … }
ThreadPool::~ThreadPool() { … }
void ThreadPool::Run(absl::AnyInvocable<void()> callback) { … }
void ThreadPool::Run(EventEngine::Closure* closure) { … }
bool ThreadPool::Queue::Add(absl::AnyInvocable<void()> callback) { … }
bool ThreadPool::Queue::IsBacklogged() { … }
void ThreadPool::Queue::SleepIfRunning() { … }
void ThreadPool::Queue::SetShutdown(bool is_shutdown) { … }
void ThreadPool::Queue::SetForking(bool is_forking) { … }
void ThreadPool::ThreadCount::Add() { … }
void ThreadPool::ThreadCount::Remove() { … }
void ThreadPool::ThreadCount::BlockUntilThreadCount(int threads,
const char* why) { … }
void ThreadPool::PrepareFork() { … }
void ThreadPool::PostforkParent() { … }
void ThreadPool::PostforkChild() { … }
void ThreadPool::Postfork() { … }
}
}