You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
31 lines
1.1 KiB
31 lines
1.1 KiB
// Copyright GoFrame Author(https://goframe.org). All Rights Reserved.
|
|
//
|
|
// This Source Code Form is subject to the terms of the MIT License.
|
|
// If a copy of the MIT was not distributed with this file,
|
|
// You can obtain one at https://github.com/gogf/gf.
|
|
|
|
package gredis
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/gogf/gf/v2/container/gvar"
|
|
)
|
|
|
|
// IGroupScript manages redis script operations.
|
|
// Implements see redis.GroupScript.
|
|
type IGroupScript interface {
|
|
Eval(ctx context.Context, script string, numKeys int64, keys []string, args []interface{}) (*gvar.Var, error)
|
|
EvalSha(ctx context.Context, sha1 string, numKeys int64, keys []string, args []interface{}) (*gvar.Var, error)
|
|
ScriptLoad(ctx context.Context, script string) (string, error)
|
|
ScriptExists(ctx context.Context, sha1 string, sha1s ...string) (map[string]bool, error)
|
|
ScriptFlush(ctx context.Context, option ...ScriptFlushOption) error
|
|
ScriptKill(ctx context.Context) error
|
|
}
|
|
|
|
// ScriptFlushOption provides options for function ScriptFlush.
|
|
type ScriptFlushOption struct {
|
|
SYNC bool // SYNC flushes the cache synchronously.
|
|
ASYNC bool // ASYNC flushes the cache asynchronously.
|
|
}
|