eventbus

package
v0.0.18 Latest Latest
Warning

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

Go to latest
Published: Oct 30, 2025 License: AGPL-3.0 Imports: 6 Imported by: 0

Documentation

Overview

Package eventbus 事件总线(泛型版)

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Publish

func Publish[T any](arg T, ebs ...*Eventbus) error

Publish 发布事件

func Subscribe

func Subscribe[T any](f func(arg T), ebs ...*Eventbus) error

Subscribe 订阅事件

事件响应时,不带错误返回的函数全部会被调用,带错误返回的函数执行到第一个出错函数结束,并返回第一个出错函数的返回值

func SubscribeWithErr

func SubscribeWithErr[T any](f func(arg T) error, ebs ...*Eventbus) error

SubscribeWithErr 订阅事件

事件响应时,不带错误返回的函数全部会被调用,带错误返回的函数执行到第一个出错函数结束,并返回第一个出错函数的返回值

func UnSubscribe

func UnSubscribe[T any](f func(arg T), ebs ...*Eventbus)

UnSubscribe 取消订阅事件

func UnSubscribeType

func UnSubscribeType[T any](ebs ...*Eventbus)

UnSubscribeType 取消指定类型的所有订阅

func UnSubscribeWithErr

func UnSubscribeWithErr[T any](f func(arg T) error, ebs ...*Eventbus)

UnSubscribeWithErr 取消订阅事件

Types

type Eventbus

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

Eventbus 事件总线,为业务提供通用的事件订阅、发布机制,降低业务模块间的耦合

func DefaultEventBus

func DefaultEventBus() *Eventbus

func NewEventbus

func NewEventbus() *Eventbus

NewEventbus 创建事件总线

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL