1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/xiawucha365-sgpool

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
pool_benchmark_test.go 963 Байты
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gjy Отправлено 26.02.2020 06:26 6a7cc59
package sgpool
import (
"strconv"
"testing"
)
const(
WORKER_NUM_10000 = 10000
WORKER_NUM_1000 = 1000
WORKER_NUM_100 = 100
)
type workersp struct {
ID string
}
func (m *workersp) Task() error {
//fmt.Println("job:" + m.ID + "runing...")
//timen := rand.Intn(3)
//fmt.Println(timen,"seconds")
//time.Sleep(time.Second * time.Duration(timen))
//fmt.Println("job:" + m.ID + "over")
return nil
}
//获取任务id,便于
func (m *workersp) GetTaskID() interface{} {
return m.ID
}
func BenchmarkSPool(b *testing.B) {
//创建协程池
spool := NewSPool(WORKER_NUM_100, b.N,0,false)
//提交任务
for n := 0; n < b.N; n++ {
np := workersp{ID: strconv.Itoa(n)}
spool.Commit(&np)
}
spool.Release()
}
func BenchmarkWPool(b *testing.B) {
//创建协程池
spool := NewWPool(WORKER_NUM_100, b.N,0,false)
//提交任务
for n := 0; n < b.N; n++ {
np := workersp{ID: strconv.Itoa(n)}
spool.Commit(&np)
}
spool.Release()
}

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/xiawucha365-sgpool.git
git@api.gitlife.ru:oschina-mirror/xiawucha365-sgpool.git
oschina-mirror
xiawucha365-sgpool
xiawucha365-sgpool
master