grpool

package
v0.0.0-...-c9a36a8 Latest Latest
Warning

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

Go to latest
Published: Jun 27, 2018 License: MIT Imports: 6 Imported by: 0

Documentation

Overview

Goroutine池. 用于goroutine复用,提升异步操作执行效率. 需要注意的是,grpool提供给的公共池不提供关闭方法(但可以修改公共属性),自创建的池可以手动关闭掉。

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Add

func Add(f func()) error

添加异步任务(使用默认的池对象)

func Jobs

func Jobs() int

查询当前等待处理的任务总数

func SetExpire

func SetExpire(expire int)

动态改变默认池中goroutine的过期时间

func SetSize

func SetSize(size int)

动态改变默认池中goroutine的上线数量

func Size

func Size() int

查询当前goroutine总数

Types

type Pool

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

goroutine池对象

func New

func New(expire int, size ...int) *Pool

创建goroutine池管理对象,给定过期时间(秒) 第二个参数用于限制限制最大的goroutine数量/线程数/worker数量,非必需参数,默认不做限制

func (*Pool) Add

func (p *Pool) Add(f func()) error

添加异步任务

func (*Pool) Close

func (p *Pool) Close()

关闭池,所有的任务将会停止,此后继续添加的任务将不会被执行

func (*Pool) Jobs

func (p *Pool) Jobs() int

查询当前等待处理的任务总数

func (*Pool) SetExpire

func (p *Pool) SetExpire(expire int)

动态改变当前池中goroutine的过期时间

func (*Pool) SetSize

func (p *Pool) SetSize(size int)

动态改变当前池中goroutine的上线数量

func (*Pool) Size

func (p *Pool) Size() int

查询当前goroutine worker总数

type PoolWorker

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

一个worker对应一个goroutine

Jump to

Keyboard shortcuts

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