Go语言中文网 为您找到相关结果 14

golang的select典型用法

golang 的 select 的功能和 select, poll, epoll 相似, 就是监听 IO 操作,当 IO 操作发生时,触发相应的动作。 示例: ch1 := make (chan int, 1) ch2 := make (chan int, 1) ... select { case <-ch1: fmt.Println("ch1 pop one element") case <-ch2: fmt.Println("ch2 pop one element") } 注意到 select 的代码形式和 switch 非常相似, 不过 select 的 case 里的操作语句只能是【IO 操作】 。 此示例里面 select 会一直等待等到某个 case 语句完成, 也就是等到成功从...阅读全文

博文 2015-02-15 18:23:33 YanyiWu

【社区福利】使用优惠价格购买《Go Web 编程》

Go 语言中文网的朋友们,大家好,我是《Go Web 编程》一书的译者黄健宏。 《Go Web 编程》这本书会以一个网络论坛作为例子,教授读者如何使用请求处理器、多路复用器、模板引擎、存储系统等核心组件去构建一个 Go Web 应用,然后在该应用的基础上,构建出相应的 Web 服务;并且除了教授具体的 Web 开发方法之外,《Go Web 编程》还会教授读者测试和部署 Go Web 应用的方法,帮助读者登堂入室、一步到位成为真正具有生产力的 Go Web 开发人员。 《Go Web 编程》目前正在人民邮电出版社的异步社区进行预售,预计将于 12 月 8 日正式发售:http://www.epubit.com.cn/book/details/4705 因为 Go 语言中文网是...阅读全文

从今天起,踏上go语言编程艺术之旅

刚毕业一个月,但工作已经将近一年了。从去年八月份开始到现在,一直在从事java和android的开发,主要是android sdk开发。应公司要求,中途也搞过xmpp和android ndk的开发,还学习过opengls知识。虽然这一年工作的面广,但是感觉真正的收获却甚少,因为在这样的过程自己并没有真正沉淀下来去精通一门技术。在这种需求式的学习中,对很多知识往往是一知半解,没有深究,所以常常也觉得茫然。 一年前就听说过go语言很厉害,但也没有真正去学习和研究。前些日子,初步了解了下go语言,第一感觉是代码看起来确实简洁清晰,再进一步的看了下它的并发机制和其他特性,发现它确实是一门好语言。一直以来就不喜欢java语言那种乱乱的感觉,有时候会感觉用java语言写出来的代码会让人浮躁,缺乏一种美感...阅读全文

博文 2014-10-27 19:00:01 leege100

玩了几天go语言,暗爽

以前看过go的几本书,《The way to go》还有《Programming in Go》,没有实在做什么项目,也没有写代码练习,很快就忘掉了。 这几天想写一个程序的原型,用来批量升级若干个主备集群。于是乎就拿Go语言来开始干活了。 一开始磕磕碰碰,很快地,熟悉了语法之后,发觉这个语言用起来其实是很愉快的。 首先用Go做东西不像C或者C++那样从头写一堆库,好多东西拿来就用。 多线程、内存管理、函数指针等等用C++很头痛的东西,现在就水到渠成。 佩服这个语言的设计者。目前我还没有完全用到所有的特性,再用一阵子应该能体会到更多便利之处...阅读全文

博文 2015-12-30 14:00:18 TrentZhou

根据输入的日期(年月日)判断是星期几——golang实现

输入日期,如2018年11月07日,输出对应的星期数代码如下: // 历史上的某一天是星期几?未来的某一天是星期几? // 关于这个问题,最著名的计算公式是蔡勒(Zeller)公式。即w=y+[y/4]+[c/4]-2c+[26(m+1)/10]+d-1 // output: w: 0 - 周日; // 1 - 周一; // 2 - 周二; // 3 - 周三; // 4 - 周四; // 5 - 周五; // 6 - 周六; // 公式中的符号含义如下,w:星期; // c:世纪-1; // y:年(两位数); // m:月(m大于等于3,小于等于14,即在蔡勒公式中,某年的1、2月要看作上一年的13、14月来计算,比如2003年1月1日要看作2002年的13月1日来计算) // d:日;...阅读全文

博文 2018-11-08 00:34:44 逍遥子_

求两圆交点算法代码(golang实现)

数学求解原理请看:求两圆相交的交点的方法 实现代码: package main import ( "math" ) //代表一个点,包含横纵坐标 type Point struct { X, Y float64 } //代表一个圆,包含横纵坐标及半径 type Circle struct { Point R float64 } //创建圆对象 func NewCircle(x, y, r float64) *Circle { return &Circle{Point{x, y}, r} } //求两圆相交的交点,交点个数可能有0,1,2 func Intersect(a *Circle, b *Circle) (p []Point) { dx, dy := b.X - a.X, b.Y - ...阅读全文

博文 2017-09-03 07:04:59 imroc

如何学习c语言 零基础20天学会C语言

C语言开发 学习C语言不是一朝一夕的事情,但也不需要花费十年时间才能精通。如何以最小的代价学习并精通C语言是本文的主题。请注意,即使是“最小的代价”,也绝不是什么捷径,而是以最短的时间取得最多的收获,同时也意味着你需要经历艰苦的过程。在这里插入图片描述 一、要读就读好书,否则不如不读 所有初学者面临的第一个问题便是:如何选择教材。好的开始是成功的一半,选择一本优秀的教材是事半功倍的关键因素。不幸的是,学校通常会帮你指定一本很差劲的C语言课本;而幸运的是,你还可以再次选择。 大名鼎鼎的谭浩强教授出了一本《C语言程序设计》,据说发行量有超过400万,据我所知,很多学校都会推荐这本书作为C语言课本。虽然本人的名字(谭浩宇)跟教授仅仅一字之差,但我是无比坚定地黑他这本书的。加下群731871503这...阅读全文

博文 2019-01-17 17:47:34 wenpeng231

沉迷经典的人--读梭罗《阅读》

梭罗说的真正的书,是指什么书呢?不是故事书,不是文中提到的《小阅读》和《简易读物》。在梭罗看来,这些书纯粹是废纸,读这些书,就像读今天的故事会,只需要有小学文化,就能用来打发时间。在每个时代,一张张有文字的纸,订成本以后,摆到书店的货架上,就是一本书了。这是一种对书的误解,书是文字的集合,文字是思想和知识的载体。 其实我们当下的情况和他的康科德也差不多,走到书店里看看就知道了,有的书长得很像书,精美的封面和印刷,有质感的纸张,但是翻开读几页之后,会发现那只是一个有诚意,有几百页的篇幅的广告,给某个学校或者某个课程做的。有的书是纯粹的产品,和九块九包邮的拖鞋没什么区别,这些书被生产出来唯一的目标就是被卖掉,生产它的人一生可能都没有读过几本书,不然,为什么会有这种书出现呢,他都没有质疑自己,怎么...阅读全文

博文 2018-09-23 12:34:40 ZHOU_e3a0

挖矿究竟怎么挖?

链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载。 本节内容你将学到以下几个概念: 挖矿(Mining)、矿工(Miner)与矿池(Pool)、双重支付(Double-Spend) ▍ 挖矿(Mining) 类比:挖掘黄金 对于刚刚接触比特币的用户来说,感觉最不可思议的术语就是“挖矿”了, 一个运行在网络上的数字大账本,还需要动用挖掘机吗?实际上“挖矿”只是一种类比,与黄金的挖掘方式相类比,黄金的开采费时费力,而且黄金资源有限。比特币的挖取也是费时(需要大量的计算)、费电(专业矿机需要充足的电力),而且BTC资源也有限,总量2100万个,每四年新币数量减半。 在第上一章介绍“交易”的概念时提到,BTC是通过交易链一层一层传递的,而最初的币是从哪里来的?就是通过“挖...阅读全文

博文 2019-09-24 13:32:48 链客

你的努力必须要有价值

壹听过太多要努力的话,我也一直告诉自己要努力,也以自己的方式努力着。可是回头想想,自己以为的努力是否是真的努力,自己的努力是否收到了想要的结果?你可能常常披星戴月,譬如见过凌晨两点的月亮,自己的努力都把自己给感动了。可是,在这么努力后,你到底收获了什么?你的所得和自己的付出成比例吗?如果相比于你的付出,所得太少,那么真的是自己出了问题:无价值的努力不是努力,那是自我感动。自己每天都很忙,忙的都没有心思注意一下路边刚刚开的花,忙的都没有时间好好收拾一下自己。心里想着,只要我一直这么努力下去,肯定有结果。可是,你并没有看看自己的努力是否产生了价值,只是埋头往前走。作为技术出身,你很喜欢技术,对于新技术,有无限的热情,一直在追逐,但是只是知道这个技术,具体怎么实现,怎么应用,怎么解决具体问题,却一...阅读全文

博文 2019-02-20 23:34:41 Qingyuan清远

分布式事务中间件Seata的设计原理

微信公众号「后端进阶」,专注后端技术分享:Java、Golang、WEB框架、分布式中间件、服务治理等等。 在微服务架构体系下,我们可以按照业务模块分层设计,单独部署,减轻了服务部署压力,也解耦了业务的耦合,避免了应用逐渐变成一个庞然怪物,从而可以轻松扩展,在某些服务出现故障时也不会影响其它服务的正常运行。总之,微服务在业务的高速发展中带给我们越来越多的优势,但是微服务并不是十全十美,因此不能盲目过度滥用,它有很多不足,而且会给系统带来一定的复杂度,其中伴随而来的分布式事务问题,是微服务架构体系下必然需要处理的一个痛点,也是业界一直关注的一个领域,因此也出现了诸如 CAP 和 BASE 等理论。 在今年年初,阿里开源了一个分布式事务中间件,起初起名为 Fescar,后改名为 Seata,在它...阅读全文

博文 2019-07-11 01:32:40 公众号_后端进阶

聊聊区块链

链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载。 在聊区块链(Blockchain)之前,我先推荐两本书,《区块链 从数字货币到信用社会》、《区块链 技术驱动金融》。 前一本是属于概念普及型,适合概览的去了解区块链,从区块链的基础到智能合约、以及应用都全面的进行了介绍,通俗易懂。后面一本就稍微深入一些,讲解了基本技术原理、算法、生态,但读起来也没有什么门槛。建议两本结合起来读,会对区块链理解的更为深刻一些。这两本书我都读过,所以这篇文章也算是一个读书心得。 区块链技术的产生和发展是离不开比特币的。因为比特币的诞生,区块链才得以公布于众,而且到目前为止,比特币还是区块链技术最成功的应用。但需要注意的一点是,比特币里的区块链是为比特币体系所定制的,所以比特币的区块链...阅读全文

博文 2019-09-23 16:32:49 链客

三门问题(蒙提霍尔悖论)分析与Golang模拟

问题描述 三门问题(Monty Hall problem)亦称为蒙提霍尔问题、蒙特霍问题或蒙提霍尔悖论,大致出自美国的电视游戏节目Let's Make a Deal。问题名字来自该节目的主持人蒙提·霍尔(Monty Hall)。参赛者会看见三扇关闭了的门,其中一扇的后面有一辆汽车,选中后面有车的那扇门可赢得该汽车,另外两扇门后面则各藏有一只山羊。当参赛者选定了一扇门,但未去开启它的时候,节目主持人开启剩下两扇门的其中一扇,露出其中一只山羊。主持人其后会问参赛者要不要换另一扇仍然关上的门。问题是:换另一扇门会否增加参赛者赢得汽车的机率? 答案 答案是会。不换门的话,赢得汽车的几率是1/3。换门的话,赢得汽车的几率是2/3。 争议 有人认为,在主持人排除了一个门之后,汽车只可能在另外两个门中,所...阅读全文

博文 2019-10-10 18:32:43 aside section ._1OhGeD

零基础学习Python的经验之谈

因为薪资比较高的,所以很多人选择当一名程序员,但是关于程序的语言有很多,Python就是其中一个,那么在零基础学习或者参加Python培训时,有什么经验呢?今天小编就来给大家讲一下吧! 1.一定要弄清楚自己的为啥学Python 做一件事情,你的动机很重要,如果意愿不很强烈,目标不清晰,很容易就会三天打鱼两天晒网,甚至稍微遇到一点波折就会停下来,慢慢的就会半途而废!因为学一门语言,不是一早一夕的事情,需要长时间的大量的练习和阅读,绝对不是一时拍脑袋的激情. 目标没有高贵和低俗之分,也许你学Python是想找一份爬虫的工作,或者研究Python是想加入人工智能的大潮,又或者是因为想写一些脚本,小工具自动化自己的日常工作节省一些时间,或者是想追女孩子,或者是想过年回家能快一点抢到...阅读全文