pubsub

package
v0.7.2 Latest Latest
Warning

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

Go to latest
Published: Jan 21, 2025 License: Apache-2.0 Imports: 1 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BroadcasterOpts

type BroadcasterOpts[T any] struct {
	SubsBufferSize int
}

type MessageBroadcaster

type MessageBroadcaster[T any] struct {
	// contains filtered or unexported fields
}

A message broadcaster is a pubsub system that allows for broadcasting messages to multiple subscribers. Well suited for event-like messages.

func NewMessageBroadcaster

func NewMessageBroadcaster[T any](opts BroadcasterOpts[T]) *MessageBroadcaster[T]

func (*MessageBroadcaster[T]) Publish

func (b *MessageBroadcaster[T]) Publish(msg T)

func (*MessageBroadcaster[T]) Start

func (b *MessageBroadcaster[T]) Start()

func (*MessageBroadcaster[T]) Stop

func (b *MessageBroadcaster[T]) Stop()

func (*MessageBroadcaster[T]) Subscribe

func (b *MessageBroadcaster[T]) Subscribe() *Subscriber[T]

type Observable

type Observable[T any] struct {
	// contains filtered or unexported fields
}

func NewObservable

func NewObservable[T any](initialState T) *Observable[T]

func (*Observable[T]) Get

func (s *Observable[T]) Get() T

func (*Observable[T]) Set

func (s *Observable[T]) Set(newState T)

func (*Observable[T]) Subscribe

func (s *Observable[T]) Subscribe() *Subscriber[T]

type Subscriber

type Subscriber[T any] struct {
	// contains filtered or unexported fields
}

func (*Subscriber[T]) Ch

func (s *Subscriber[T]) Ch() <-chan T

func (*Subscriber[T]) Unsubscribe

func (s *Subscriber[T]) Unsubscribe()

Jump to

Keyboard shortcuts

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