mirror of
https://github.com/oarkflow/mq.git
synced 2025-11-03 13:40:42 +08:00
feat: [wip] - implement storage
This commit is contained in:
@@ -11,14 +11,14 @@ import (
|
||||
func main() {
|
||||
handler := tasks.SchedulerHandler
|
||||
callback := tasks.SchedulerCallback
|
||||
pool := mq.NewPool(3, 5, 1000, handler, callback)
|
||||
pool := mq.NewPool(3, 5, 1000, handler, callback, mq.NewMemoryTaskStorage(10*time.Minute))
|
||||
ctx := context.Background()
|
||||
pool.AddTask(context.Background(), &mq.Task{ID: "Task 1"}, 1)
|
||||
pool.EnqueueTask(context.Background(), &mq.Task{ID: "Task 1"}, 1)
|
||||
time.Sleep(1 * time.Second)
|
||||
pool.AddTask(context.Background(), &mq.Task{ID: "Task 2"}, 5)
|
||||
pool.Scheduler.AddTask(ctx, &mq.Task{ID: "Every Minute Task"})
|
||||
pool.EnqueueTask(context.Background(), &mq.Task{ID: "Task 2"}, 5)
|
||||
pool.Scheduler().AddTask(ctx, &mq.Task{ID: "Every Minute Task"})
|
||||
time.Sleep(10 * time.Minute)
|
||||
pool.Scheduler.RemoveTask("Every Minute Task")
|
||||
pool.Scheduler().RemoveTask("Every Minute Task")
|
||||
time.Sleep(5 * time.Minute)
|
||||
pool.PrintMetrics()
|
||||
pool.Stop()
|
||||
|
||||
Reference in New Issue
Block a user