package idle
import "google.golang.org/grpc/internal/idle"
Package idle contains a component for managing idleness (entering and exiting) based on RPC activity.
Index ¶
Types ¶
type Enforcer ¶
type Enforcer interface { ExitIdleMode() error EnterIdleMode() }
Enforcer is the functionality provided by grpc.ClientConn to enter and exit from idle mode.
type Manager ¶
type Manager struct {
// contains filtered or unexported fields
}
Manager implements idleness detection and calls the configured Enforcer to enter/exit idle mode when appropriate. Must be created by NewManager.
func NewManager ¶
NewManager creates a new idleness manager implementation for the given idle timeout. It begins in idle mode.
func (*Manager) Close ¶
func (m *Manager) Close()
Close stops the timer associated with the Manager, if it exists.
func (*Manager) EnterIdleModeForTesting ¶
func (m *Manager) EnterIdleModeForTesting()
EnterIdleModeForTesting instructs the channel to enter idle mode.
func (*Manager) ExitIdleMode ¶
ExitIdleMode instructs m to call the enforcer's ExitIdleMode and update m's internal state.
func (*Manager) OnCallBegin ¶
OnCallBegin is invoked at the start of every RPC.
func (*Manager) OnCallEnd ¶
func (m *Manager) OnCallEnd()
OnCallEnd is invoked at the end of every RPC.
Source Files ¶
idle.go
- Version
- v1.70.0 (latest)
- Published
- Jan 23, 2025
- Platform
- linux/amd64
- Imports
- 5 packages
- Last checked
- 20 hours ago –
Tools for package owners.