# 题目 修改clock2来支持传入参数作为端口号,然后写一个clockwall的程序,这个程序可以同时与多个clock服务器通信,从多个服务器中读取时间,并且在一个表格中一次显示所有服务器传回的结果,类似于你在某些办公室里看到的时钟墙。如果你有地理学上分布式的服务器可以用的话,让这些服务器跑在不同的机器上面;或者在同一台机器上跑多个不同的实例,这些实例监听不同的端口,假装自己在不同的时区。
$ TZ=US/Eastern ./clock2 -port 8010 & $ TZ=Asia/Tokyo ./clock2 -port 8020 & $ TZ=Europe/London ./clock2 -port 8030 & $ clockwall NewYork=localhost:8010 Tokyo=localhost:8020 London=localhost:8030 # 分析 CS结构的网络
服务端接受参数 port, 可以用 golang flag 标准库
定时通过网络io吐出时间
客户端接受参数 [city]:[host] 可以用 golang os.Args处理
一对多建立tcp连接,客户端维护一份大盘数据,预计会遇到并发写问题
客户端定时刷新 => 周期性打印大盘数据
# 解答 代码注释即编码思路
## 服务端 package main import ( "flag" "io" "log" "net" "time" ) var port string func init() { flag.StringVar(&port, "port", "8000", "input port of the server") } // TZ=US/Eastern go run clock2.