texus/core/core.go
2024-12-29 15:29:09 +08:00

36 lines
587 B
Go

package core
import (
"context"
)
type Core struct {
// Add any necessary fields here
}
func (c *Core) GetScoreList(count int) []string {
// Implementation of GetScoreList
}
func (c *Core) GetScoreListWithContext(ctx context.Context, count int) ([]string, error) {
done := make(chan []string, 1)
errChan := make(chan error, 1)
go func() {
list := c.GetScoreList(count)
select {
case done <- list:
case <-ctx.Done():
}
}()
select {
case list := <-done:
return list, nil
case err := <-errChan:
return nil, err
case <-ctx.Done():
return nil, ctx.Err()
}
}