app

package
v0.5.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 17, 2025 License: MIT Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func LoadConfiguration

func LoadConfiguration(title, revision string, opts any) (lgr.L, error)

func ParseConfiguration

func ParseConfiguration(opts any) error

Types

type Application

type Application struct {
	// contains filtered or unexported fields
}

func New

func New(title, revision string, opts any) *Application

func (*Application) Add

func (a *Application) Add(fn func(ctx context.Context))

Add - Добавляет функцию, которая будет выполнена перед завершением приложения в очередь

func (*Application) Cancel

func (a *Application) Cancel() context.CancelFunc

Cancel - возвращает функцию для завершения приложения

func (*Application) CancelCause

func (a *Application) CancelCause() context.CancelCauseFunc

CancelCause - возвращает функцию для завершения приложения с возможностью передать ошибку в качестве причины завершения

func (*Application) Context

func (a *Application) Context() context.Context

Context - возвращает глобальный контекст

func (*Application) EnableAnyKeyToExit

func (a *Application) EnableAnyKeyToExit()

AnyKeyToExit - реализует выход из приложения после нажатия любой клавиши пользователем

https://stackoverflow.com/questions/15159118/read-a-character-from-standard-input-in-go-without-pressing-enter

func (*Application) GS

func (a *Application) GS(timeout time.Duration)

GS - Обявляет точку для ожидания завершения приложения [Depricated]

func (*Application) GracefulShutdown

func (a *Application) GracefulShutdown(timeout time.Duration)

GracefulShutdown - Обявляет точку для ожидания завершения приложения

func (*Application) Log

func (a *Application) Log() lgr.L

Log - возвращает логгер

type Debug

type Debug struct {
	Debug bool `long:"debug" env:"DEBUG" description:"enable debug mode"`
}

type GracefulShutdown

type GracefulShutdown struct {
	// contains filtered or unexported fields
}

GracefulShutdown структура для плавного отключения приложения

Содержит стек функций которые необходимо выполнить перед завершением приложения и методы для их добавления и выполнения

func NewGracefulShutdown

func NewGracefulShutdown(log lgr.L) *GracefulShutdown

NewGracefulShutdown создает сруктуру для плавного отключения приложения

func (*GracefulShutdown) Add

func (gs *GracefulShutdown) Add(fn func(ctx context.Context))

Add добавляет функции которые необходимо выполнить перед завершением приложения в стек

func (*GracefulShutdown) Wait

func (gs *GracefulShutdown) Wait(ctx context.Context, timeout time.Duration)

Wait подписывается на системные уведомления об отклбчении и производит запуск функции Shutdown после получения сигналов syscall.SIGTERM, syscall.SIGINT

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL
JackTT - Gopher 🇻🇳