【发布时间】:2015-06-26 20:13:04
【问题描述】:
我想构建一个类似于 unix 工具time 的基准测试工具。我目前拥有的是这样的:
package main
import (
"fmt"
"os"
"os/exec"
"time"
)
func main() {
command := os.Args[1]
args := os.Args[2:]
cmd := exec.Command(command, args...)
start_time := time.Now().UnixNano()
stdout, err := cmd.Output()
if err != nil {
println(err.Error())
return
}
print(string(stdout))
total_time := int64(time.Nanosecond) * (time.Now().UnixNano() - start_time) / int64(time.Millisecond)
fmt.Println(total_time)
}
我的问题是,输出不是流式传输,而是一次全部打印出来,而且对于某些程序来说,这很奇怪。
【问题讨论】: