N
行/秒を印刷したいと思います。Golangでは、1秒間に何回もコマンドを何回実行するのですか?
for i := 0; i < N; i++ {
fmt.Println(getLogs())
time.Sleep(1000000000/N * time.Nanosecond)
}
しかし、それはfmt.Println()
ようだとgetLogs()
も時間を消費します。実際には、N
行を印刷するには1s以上の費用がかかります。
セイgetLogs()
とfmt.Println()
はいずれも1msです。そして、毎秒100万行を印刷したいと思います。したがって、1行を印刷するには、1秒でgetLogs()
、印刷には1ms、スリープには1ms ... N行を印刷するには3秒かかります。
これをより正確に達成するためのより良い解決策はありますか?
よう
time.Ticker
ものを使用することができます?私は本当にあなたの目的を得ることはありません。書かれているように、Nが増えるとスリープ時間が減少する – Plato@Platoティッカーは、ティッカーがfmt.PrintlnとgetLogsと並行して時間をカウントする場合に機能し、 – Pao