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

ubuntu下最新版golang安装教程

相信打算安装golang的同学们早已看了很多安装教程了,网上的主流方法有两种,一种是 sudo apt-get install golang-go 简单暴力,但是由于现在很多golang的库已经要求 >1.1 ,而 apt-get 安装的是 1.02 ,也建议大家安装最新版的golang,因此推荐手动安装,教程本身没有问题,但是由于某些特殊原因,可能导致安装失败甚至卡在莫名奇妙的地方。在卡了一个中午后,我还是写下这篇文章总结下要注意的地方。 以ubuntu wiki的 安装教程 为例: 安装gcc工具,因为golang有些功能是使用c写的,所以构建golang的编译是必须的 $ sudo apt-get insta...阅读全文

博文 2014-10-06 07:32:32 stonxer

Go 解决"unsupported protocol scheme"问题

【问题】 我写了一段程序,代码如下: package main import ( "io/ioutil" "net/http" "log" ) func main() { resp, err := http.Get("www.baidu.com") if err != nil { log.Fatalln(err) } body, err := ioutil.ReadAll(resp.Body) defer resp.Body.Close() if err != nil { log.Fatalln(err) } log.Println(string(body)) } 执行的时候报了下面的错误: Get www.google.com: unsupported protocol scheme ""...阅读全文

博文 2016-12-21 12:00:02 吃一堑消化不良

[golang] implicit assignment of unexported field

struct结构如下: package models import ( "github.com/robfig/revel" ) type Post struct { id int title string } 我在另一个包里面使用 package controllers import ( "blog/app/models" "fmt" "github.com/coopernurse/gorp" "github.com/robfig/revel" ) type Application struct { *revel.Controller Txn *gorp.Transaction } func (c Application) Index() revel.Result { post := &mo...阅读全文

博文 2014-10-04 19:25:57 davidhhuan

golang的杀手级应用:docker

docker 是 golang 的第一个杀手级应用,发展迅猛, 现在各大云计算平台几乎全都支持 docker 实例,包括 谷歌,亚马逊,阿里云等。 golang 本身已经让我惊喜万分,而 docker 更是极大的激发了我对虚拟化的想象。 关于软件和硬件 IT 业发展至今,软件和硬件始终是无法分割的两个物体。 就拿最近几年红红火火的智能机时代来说, 很久之前的诺基亚智能机, 软件和硬件相辅相成, 连进入主界面都需要按一个特定的按钮才能进入。 软件的操作都严重依赖键盘等按键。 体验非常不好, 对软件设计人员的约束也很大。 而苹果 iPhone 横空出世的时候, 最大限度的让你忘记硬件, 硬件主要只剩下一个 home键 和 可触控玻璃。 就是这样的 home键 和 触摸屏 组合, 大大的释放了软件...阅读全文

博文 2015-02-15 18:27:19 YanyiWu

go语言chan 和 routine活用

这里,我们以游戏中的一个情况为例。比如魔兽世界里的40人团队副本BOSS战,很多玩家同时攻击BOSS,BOSS的血量会进行频繁修改,我们要记录对BOSS的致命一击。常规 对BOSS血量的操作经行加锁,然后修改,每次攻击甚至还会判断怪物是否处于死亡状态以判断客户端是否能施放某个技能,但这样会让一个锁控制40个玩家的攻击操作,会导致攻击,技能等释放的不流畅。所以魔兽世界应该不是采用这种加锁的方式。为什么我这样说,因为做为了一个wower,我们经常会发现,实际BOSS,怪物已经死了,但我的寒冰剑还在半路,结果呢,寒冰剑击中了已经成为尸体的怪物并且显示伤害值。 使用GO语言来实现这样的功能: /** * Created by Administrator on 13-12-20. */ package...阅读全文

博文 2014-10-04 19:25:56 eclipser1987

Golang实现的红黑树

红黑树是一种基于二叉查找树的数据结构,它具有如下性质: (1) 二叉查找树的性质它都有 (2) 每个节点都有一个颜色属性,每个节点或是红的或是黑的 (3) 根节点必须是黑的 (4) 每个叶子节点(nil节点)为黑 (5) 如果一个节点为红的,那么它的两个孩子都是黑的 (6) 每个节点到它子孙叶子节点的路径上的黑色节点个数是相同的 相比二叉查找树,红黑树在添加或删除元素的同时还需要调整树的深度,所以需要用到对树结构的一些旋转操作,下面的实例代码给的非常详尽了,可以看看LeftRotate()和RightRotate()函数式如何实现旋转的。如果有人发现了BUG请在留言中发表~ 这个代码是在之前的"Golang以OO的方式实现二叉查找树"里的代码加工实现的,因为本人技术不到位。。。出了好几次BU...阅读全文

博文 2015-06-17 20:03:52 u011774512

完全卸载go语言编译器

在mac中完全卸载golang编译器如果你是通过安装包的形式 安装的go语言编译器,那么更新的方式也会非常简单,那就是直接下载新的golang安装包。在安装新的时候,会自动删除掉旧的编译器。手动删除查看路径在哪里:1> which goroot 权限下删除1> rm -rf /usr/local/go删除1> rm -rf /etc/paths.d/go将环境变量,有关 go 的删了即可1> vim ~/.bash_profile本文链接: https://dreamerjonson.com/2018/12/13/uninstall-go-mac/版权声明: 本博客所有文章除特别声明外,均采用 CC BY 4.0 CN协议 许可协议。转载请注明出处...阅读全文

博文 2018-12-14 23:35:30 jonson_jackson

go语言操作mysql数据库问题

hi 我用github.com/Go-SQL-Driver/Mysql操作mysql 例子参照go web 编程教程 增改删按顺序操作没问题,但是只修改就报错,求助大神是什么原因造成的? 报错信息: .\test.go:47: undefined: stmt .\test.go:48: undefined: res .\test.go:48: undefined: stmt .\test.go:49: undefined: res //代码如下: package main import ( "database/sql" "fmt" _ ...阅读全文

BookStack V1.2 发布,增加书籍分类和用户主页等功能

BookStack,分享知识,共享智慧!知识,因分享,传承久远! BookStack是基于[Mindoc](https://gitee.com/longfei6671/godoc)开发的,为运营而生,可用于文档项目管理,也可用于开源书籍的整理并提供用户阅读,支持批量创建文档、markdown项目一键导入以及文章采集等强大便捷的功能。 ![首页1.png](http://static.bookstack.cn/projects/help/15234b6d9c2c2a4d.png "首页1.png") ## 升级日志 1\. 增加书籍分类 ![分类1.png](http://static.bookstack.cn/projects/help/15234b715f85...阅读全文

在 Cloud 9 中搭建和运行 Go

简介 自从使用了Chromebook,我脑中一直充斥着在云端开发的念头。在我使用过的位数不多的在线开发环境中,唯有 Cloud 9令我比较满意。实际上,Cloud 9还不支持Go的开发,因此本文我将教大家如何让Go在Cloud 9上运行。 创建你的工作区 第一步,创建一个workspace,根据个人喜好命名。 工作区创建完成后,点击开始编辑按钮,你讲看到一个空白的工作区和一个README.md文件(删了也无所谓)。 在工作区的底端,你可以看见控制台,也就是接下来我们要进行操作的地方。如果你希望使用一个更纯粹的控制台,你可以在下面位置启动它: View > Terminals > New Terminal C9最牛逼的地方在于它的虚拟环境,如果你熟悉linux下的命令行,那么上手将轻而易举。既...阅读全文

博文 2014-11-13 12:00:00 zajin

在 Cloud 9 中搭建和运行 Go

简介 自从使用了Chromebook,我脑中一直充斥着在云端开发的念头。在我使用过的位数不多的在线开发环境中,唯有 Cloud 9令我比较满意。实际上,Cloud 9还不支持Go的开发,因此本文我将教大家如何让Go在Cloud 9上运行。 创建你的工作区 第一步,创建一个workspace,根据个人喜好命名。 工作区创建完成后,点击开始编辑按钮,你讲看到一个空白的工作区和一个README.md文件(删了也无所谓)。 在工作区的底端,你可以看见控制台,也就是接下来我们要进行操作的地方。如果你希望使用一个更纯粹的控制台,你可以在下面位置启动它: View > Terminals > New Terminal C9最牛逼的地方在于它的虚拟环境,如果你熟悉linux下的命令行,那么上手将轻而易举。既...阅读全文

博文 2014-11-06 18:00:00 cmy00cmy, 5th_days

【golang】切片添加和删除一个元素

前言 在做leetcode熟悉语法的时候,需要对一个切片进行操作。删除操作还好,go圣经有提到,但是增加元素就让我抓了个狂。最后在同事帮助下找到了合适的语法。 正文 -删除元素 l := []int{0, 1, 2, 3, 4, 5, 6, 7, 8, 9} newL := append(l[0:5], l[6:]...) -增加元素 l := []int{0, 1, 2, 3, 4, 6, 7, 8, 9} newL := append(l[0:5], append([]int{5}, l[5:]...)......阅读全文

博文 2019-10-15 20:33:44 aside section ._1OhGeD

阿里云云大使经验分享:老司机9招带你玩转云大使推广

阿里云是国内云服务器市场的龙头,性价比高,速度快又安全,是站长建站首选的云服务器之一。福利吧使用的也是阿里云服务器,是折腾了很多次网站搬家后,才选择了阿里云。身边好几个站长最后都殊途同归,用了阿里云,可见阿里云服务器性能确实好。其实在阿里云没有推广返利的时代,我就已经向身边的站长朋友,推荐阿里云了。自从阿里云推出了云大使返利策略后,就更加积极的推广阿里云了,推广的越多我们收益越高。推广阿里云主要方式就是推广阿里云云大使幸运券,新用户用你的阿里云幸运券购买云服务器等产品,你会有返利,而且是现金哦。作为一个老司机,福利吧(www.fuliba.com)也和大家分享一下我的阿里云推广经验,教大家如何免费推广云大使。 1、站长利用自己的网站推广 站长可以利用你自己的网站进行推广,你的...阅读全文

求职日记(三)

其实,我在年前的一周,已经正式入职公司C了,但当我确定入职日期了以后,一些意外接踵而来,面临更多的选项的我有点乱了套,脑子渐渐的变成一团浆糊了…… 以下是自问自答,全当理理思绪吧。 为什么选择入职公司C? 虽然不是做区块链的,但golang微服务方向是次优选择。一方面,可以加强一下golang的开发经验,另一方面做微服务下的一些高并发高可用场景,也可以分布式开发的经验。这两方面经验,目前的理解是对做区块链也是有帮助的。 虽然固定工资是平薪,但是有绩效奖,加上有一些等价期权的股权,整体上可以兼顾长短期收益,所以也还不错。 公司距离离家近些,公共交通方便。 面试时,接触到公司的人给我的感觉挺好,气场挺和的来的(入职后,接触了更多的同事后,感觉依然不错)。 为什么开始纠结了? 在确认入职时间时,本...阅读全文

博文 2019-02-14 00:34:44 海之方

Ansible 怎么可以缺少阿里云

摘要: 本文转载自 阿里云CodePipeline客户“小草”的个人博客,Step By Step的呈现了从0配置一个nodejs 静态网站发布到OSS,并通过CDN回源加速的过程。 本文转载自 阿里云CodePipeline客户“小草”的个人博客,原文地址:  http://www.forkjoin.org/2017/08-21-CodePipeline-ossweb/ 现在流行前后端彻底分离,前端生成webpack 打包的静态文件。可以通过 CodePipeline构建后发布到oss 进行发布前端。下面进行详细讲解 第一步 申请开通 CodePipeline   CodePipeline 地址 第二步 创建CodePipeline任务 1....阅读全文

golang mmo游戏 aoi算法

type( //十字链路 GameNode struct { xPrev *GameNode xNext *GameNode yPrev *GameNode yNext *GameNode mObj IGameBase X int Y int } ) var( m_XNode *GameNode m_YNode *GameNode ) //添加到十字链路 func AddNode(node* GameNode){ //x handle var tail *GameNode bFind := false if m_XNode == nil || m_YNode == nil{ m_XNode, m_YNode = node, node return } for curNode := m_XNo...阅读全文

博文 2019-08-12 18:07:33 bobohume

2018-12-22 晚间日记

天气:小雨 任务清单 习惯养成类:日更800+字 && writingTime >=1h 习惯养成类:单词 30个,复习优先,你的目的是为了记住单词,而不是看到更多的单词。 看TED,或者其他的英文节目1h 周目标·完成进度 golang 1K 众病之王---癌症治疗的认知升级(总结2000字+) 梁宁的产品思维30讲(写总结2000字+) 学有所得 思考快与慢 中有一个例子讲代表性偏误。 史蒂夫是从一个有代表性的样本库中被随机挑选出来的: 邻居如此描述这个孩子:“史蒂夫非常腼腆,少言寡语,很乐于助人,却对他人或者这个现实世界没有兴趣。他谦恭有礼,做事井井有条,中规中矩,关注细节。”请问史蒂夫更可能从事哪种职业,图书管理员还是农民? 很显然,史蒂夫的个性和典型的图书管理员有着惊人的相似,但这...阅读全文

博文 2018-12-22 23:34:48 郭青耀

BookStack v2.0 发布,功能类似 GitBook 和看云的在线文档管理系统

程序介绍 BookStack,分享知识,共享智慧!知识,因分享,传承久远! BookStack 是基于 Mindoc、使用Go语言的Beego框架开发的功能类似GitBook和看云的在线文档管理系统,实现了文档采集、导入、电子书生成以及版本控制等强大的文档功能,并推出了配套的开源微信小程序 BookChat。 升级日志 BookStack 配套微信小程序 BookChat 接口实现,累计 20+ 个API接口 修复删除项目时误删默认封面的bug HTML内容处理,以兼容微信小程序rich-text组件对HTML内容的渲染 增加开源书籍和文档收录提交入口,以及收录管理 内容采集增强和优化 书籍在发布的时候,自动把非站内图片自动采集下来 书籍页增加小程序码,提供小程序阅读入口,打通PC端与移动端...阅读全文

博文 2019-08-13 18:04:19 TruthHun

kubernetes垃圾回收器GarbageCollector Controller源码分析(二)

kubernetes版本:1.13.2 接上一节:kubernetes垃圾回收器GarbageCollector Controller源码分析(一) 主要步骤 GarbageCollector Controller源码主要分为以下几部分: monitors作为生产者将变化的资源放入graphChanges队列;同时restMapper定期检测集群内资源类型,刷新monitors runProcessGraphChanges从graphChanges队列中取出变化的item,根据情况放入attemptToDelete队列; runProcessGraphChanges从graphChanges队列中取出变化的item,根据情况放入attemptToOrphan队列; runAttemptToD...阅读全文

博文 2019-10-12 15:02:42 小碗汤

使用Golang解析读取Mysql备份文件

前言 前期误操作,导致数据库表删除,虽然数据量不多,但是通过binlog恢复比较麻烦,通过备份文件来恢复,备份文件达36个G打开都是问题; 使用备份文件恢复 大文件编辑器,glogg-latest-x86_64-setup通过该文件打开备份文件,虽然过程稍慢,但是能够打开,且正常读取编辑信息,要恢复的数据量不大时采取是没问题的,但是如果表几十万行,操作起来就比较麻烦了; Golang读取备份文件 采用Golang读取,借助编程语言的优势来读取备份,经过测试读取指定备份文件(约36GB)表,大约需要12min,其实主要就是读取遍历备份文件的过程; ** * @Author: ws * @File: main * @Date: 2019/11/16 0016 14:35 * @Remark: *...阅读全文

Golang学习笔记-map

map是一些键值对的集合,默认值为nil,使用内置函数make创建map: var map_variable map[key_data_type]value_data_type map_variable := make(map[key_data_type]value_data_type) func main() { var numberMap map[string] int numberMap=make(map[string]int) println(len(numberMap)) } map可以使用大括号来初始化: var numberMap =map[string] int{"one":1,"two":2,"three":3} 判断元素是否存在: func main() { var nu...阅读全文

博文 2019-09-27 23:32:44 aside section ._1OhGeD

Golang学习笔记-接口和错误

接口 Go接口定义了方法后,其它类型只要实现了这些方法就是实现了接口。 type Person interface { speak() } type Student struct { } type Worker struct { } func (student Student) speak(){ println("I am student") } func (worker Worker) speak(){ println("I am worker") } func main() { var person Person person=Worker{} person.speak()//I am worker person=Student{} person.speak()//I am studen...阅读全文

博文 2019-09-27 23:32:44 aside section ._1OhGeD

kubernetes垃圾回收器GarbageCollector Controller源码分析(二)

kubernetes版本:1.13.2 接上一节:kubernetes垃圾回收器GarbageCollector Controller源码分析(一) 主要步骤 GarbageCollector Controller源码主要分为以下几部分: monitors作为生产者将变化的资源放入graphChanges队列;同时restMapper定期检测集群内资源类型,刷新monitors runProcessGraphChanges从graphChanges队列中取出变化的item,根据情况放入attemptToDelete队列; runProcessGraphChanges从graphChanges队列中取出变化的item,根据情况放入attemptToOrphan队列; runAttemptToD...阅读全文

博文 2019-10-13 23:04:28 Liabio

golang xorm postgresql数据库操作

1.连接数据库func Connect()(* xorm.Engine) {str := fmt.Sprintf("host=%s port=%d user=%s password=%s dbname=%s sslmode=disable", host, port, user, password, dbName)engine,err := xorm.NewEngine("postgres",str)if err != nil {log.Fatal(err)return nil }err = engine.Ping()if err != nil {log.Fatal(err)return nil }engine.Logger().SetLevel(core.LOG_DEBUG)f,err :=...阅读全文

博文 2019-08-13 18:32:46 dullswords