Skip to content

Commit

Permalink
feat: string2Byte reduce bytes copy (#114)
Browse files Browse the repository at this point in the history
* string2Byte 减少拷贝

* 增加ctx

* go fmt

Co-authored-by: dino.ma <mashengjie03@baidu.com>
  • Loading branch information
dino-ma and dino.ma committed Jun 3, 2021
1 parent f8eea15 commit c005d31
Showing 1 changed file with 6 additions and 5 deletions.
11 changes: 6 additions & 5 deletions cmd/rsocket-cli/runner.go
Expand Up @@ -5,6 +5,7 @@ import (
"context"
"encoding/json"
"fmt"
"github.com/rsocket/rsocket-go/internal/bytesconv"
"io/ioutil"
"net/http"
"net/url"
Expand Down Expand Up @@ -287,18 +288,18 @@ func (r *Runner) createPayload() flux.Flux {
return flux.Error(err)
}
} else {
md = []byte(r.Metadata)
md = bytesconv.StringToBytes(r.Metadata)
}

if r.Input == "-" {
fmt.Println("Type commands to send to the server......")
reader := bufio.NewReader(os.Stdin)
text, _ := reader.ReadString('\n')
return flux.Just(payload.New([]byte(strings.Trim(text, "\n")), md))
return flux.Just(payload.New(bytesconv.StringToBytes(strings.Trim(text, "\n")), md))
}

if !strings.HasPrefix(r.Input, "@") {
return flux.Just(payload.New([]byte(r.Input), md))
return flux.Just(payload.New(bytesconv.StringToBytes(r.Input), md))
}

return flux.Create(func(ctx context.Context, s flux.Sink) {
Expand All @@ -319,7 +320,7 @@ func (r *Runner) createPayload() flux.Flux {
s.Error(ctx.Err())
return
default:
s.Next(payload.New([]byte(scanner.Text()), md))
s.Next(payload.New(bytesconv.StringToBytes(scanner.Text()), md))
}
}
s.Complete()
Expand All @@ -331,7 +332,7 @@ func (r *Runner) readData(input string) (data []byte, err error) {
case strings.HasPrefix(input, "@"):
data, err = ioutil.ReadFile(input[1:])
case input != "":
data = []byte(input)
data = bytesconv.StringToBytes(input)
}
return
}
Expand Down

0 comments on commit c005d31

Please sign in to comment.