thread

package
v2.8.0-alpha Latest Latest
Warning

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

Go to latest
Published: Mar 27, 2024 License: Apache-2.0 Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type NoopThread added in v2.1.0

type NoopThread struct{}

NoopThread is used to disable threading.

func NewNoopThread added in v2.1.0

func NewNoopThread() *NoopThread

NewNoopThread creates a new thread that does no threading.

func (*NoopThread) Call added in v2.1.0

func (t *NoopThread) Call(f func())

Call executes the func immediately.

func (*NoopThread) CallAsync added in v2.6.0

func (t *NoopThread) CallAsync(f func())

CallAsync executes the func immediately.

func (*NoopThread) Loop added in v2.1.0

func (t *NoopThread) Loop(ctx context.Context) error

Loop does nothing.

type OSThread added in v2.1.0

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

OSThread represents an OS thread.

func NewOSThread added in v2.1.0

func NewOSThread() *OSThread

NewOSThread creates a new thread.

func (*OSThread) Call added in v2.1.0

func (t *OSThread) Call(f func())

Call calls f on the thread.

Do not call Call from the same thread. Call would block forever.

Call blocks if Loop is not called.

func (*OSThread) CallAsync added in v2.6.0

func (t *OSThread) CallAsync(f func())

CallAsync tries to queue f. CallAsync returns immediately if f can be queued. CallAsync blocks if f cannot be queued.

Do not call CallAsync from the same thread. CallAsync would block forever.

func (*OSThread) Loop added in v2.1.0

func (t *OSThread) Loop(ctx context.Context) error

Loop starts the thread loop until Stop is called on the current OS thread.

Loop returns ctx's error if exists.

Loop must be called on the OS thread.

type Thread

type Thread interface {
	Loop(ctx context.Context) error
	Call(f func())
	CallAsync(f func())
	// contains filtered or unexported methods
}

Jump to

Keyboard shortcuts

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