mirror of
https://github.com/unknwon/the-way-to-go_ZH_CN.git
synced 2025-08-19 03:50:11 +08:00
Update 14.4.md
This commit is contained in:
@@ -114,7 +114,29 @@ Received on channel 1: 94348
|
||||
|
||||
练习14.10:[polar_to_cartesian.go](exercises/chapter_14/polar_to_cartesian.go)
|
||||
|
||||
(这是一种综合练习,使用到章节4,9,11的内容和本章内容。)
|
||||
(这是一种综合练习,使用到章节4,9,11的内容和本章内容。)写一个可交互的控制台程序,要求用户输入二位平面极坐标上的点(半径和角度(度))。计算对应的笛卡尔坐标系的点的x和y并输出。使用极坐标和笛卡尔坐标的结构体。
|
||||
|
||||
使用通道和协程:
|
||||
`channel1`用来接收极坐标
|
||||
`channel2`用来接收笛卡尔坐标
|
||||
|
||||
转换过程需要在协程中进行,从channel1中读取然后发哦送到channel2。实际上做这种计算不提倡使用协程和通道,但是如果运算量很大很耗时,这种方案设计就非常合适了。
|
||||
|
||||
|
||||
练习14.11: [concurrent_pi.go](exercises/chapter_14/concurrent_pi.go) / [concurrent_pi2.go](exercises/chapter_14/concurrent_pi2.go)
|
||||
|
||||
使用以下序列在协程中计算pi:开启一个协程来计算公式中的每一项并将结果放入通道,`main()`函数收集并累加结果,打印出pi的近似值。
|
||||
|
||||

|
||||
|
||||
计算执行时间(参见章节[6.11](6.11.md))
|
||||
|
||||
再次声明这只是为了一边练习协程的概念一边找点乐子。
|
||||
|
||||
如果你需要的话可使用`math.pi`中的Pi;而且不使用协程会运算的更快。一个急速版本:使用`GOMAXPROCS`,开启和`GOMAXPROCS`同样多个协程。
|
||||
|
||||
习惯用法:后台服务模式
|
||||
|
||||
|
||||
|
||||
## 链接
|
||||
|
Reference in New Issue
Block a user