開発環境
- macOS Catalina - Apple (OS)
- Emacs (Text Editor)
- Windows 10 Pro (OS)
- Visual Studio Code (Text Editor)
- Go (プログラミング言語)
Go Systems Programming: Master Linux and Unix system level programming with Go (渋川 よしき(著)、ごっちん(イラスト)、ラムダノート)、第4章(低レベルアクセスへの入り口3:チャンネル)、4.5(問題)、Q4.1(タイマー)の解答を求めてみる。
コード
package main
import (
"fmt"
"os"
"time"
)
func main() {
go func() {
wait := time.After(3 * time.Minute)
<-wait
fmt.Println("カップラーメン出来上がり!🍜")
os.Exit(0)
}()
for i := 10; ; i += 10 {
time.Sleep(10 * time.Second)
fmt.Printf("%v秒経過…\n", i)
}
}
入出力結果(Zsh、PowerShell、Terminal)
% go build
% ./timer
10秒経過…
20秒経過…
30秒経過…
40秒経過…
50秒経過…
60秒経過…
70秒経過…
80秒経過…
90秒経過…
100秒経過…
110秒経過…
120秒経過…
130秒経過…
140秒経過…
150秒経過…
160秒経過…
170秒経過…
カップラーメン出来上がり!🍜
%
0 コメント:
コメントを投稿