2020年3月

Ubuntu 16.04/18.04忘记登陆密码的解决方法

很长时间没有在虚拟机上操作Ubuntu系统了,所以忘记了当初安装Ubuntu系统时设置的登陆密码,经过摸索,找到了解决方法,现在分享出来,给同样需要的人。本文所用的Ubuntu版本是16.04,所用的GNU GRUB是2.02版的。经过测试,它也适用在Ubuntu 18.04下,可以这么说,所有的Ubuntu版本忘记了登陆密码都可以参考本文的方法。

1、开机时一直按着shift键,进入像是windows bios界面一样的界面:
bios界面

- 阅读剩余部分 -

Golang--数据类型

A 基本数据类型

1 布尔类型 bool
1)Go 对于值之间的比较有非常严格的限制,只有两个类型相同的值才可以进行比较,如果值的类型是接口(interface),它们也必须都实现了相同的接口。如果其中一个值是常量,那么另外一个值的类型必须和该常量类型相兼容的。
2)对于布尔值的好的命名能够很好地提升代码的可读性,例如以 is 或者 Is 开头的isSorted 、 isFinished 、 isVisivle 。
3)在格式化输出时,你可以使用 %t 来表示你要输出的值为布尔型。
4)布尔型的值只可以是常量 true 或者 false。

2 数字类型
##有符号整数
int8(-128 -> 127)
int16(-32768 -> 32767)
int32(-2,147,483,648 -> 2,147,483,647)
int64(-9,223,372,036,854,775,808 -> 9,223,372,036,854,775,807)
int( 32 位操作系统上64 位,64 位操作系统64 位)

##无符号整数
uint8(0 -> 255)
uint16(0 -> 65,535)
uint32(0 -> 4,294,967,295)
uint64(0 -> 18,446,744,073,709,551,615)
uint ( 32 位操作系统上64 位,64 位操作系统64 位)

- 阅读剩余部分 -

GitHub 高级搜索

相信大家进入 GitHub 搜索一些资料时,都是下面的步骤:
1,进入网页:
2,搜索栏输入关键字:
3,搜索得到结果:

看似没毛病,确实没毛病。但是我想说的是这样的搜索真的能够搜到你想要的吗?
也许是可以,但是例如上面我搜的 Django 关键词,显示出来的结果有26万条,你能找到想要的吗?即使找到了,得浪费多少时间呢?

- 阅读剩余部分 -

Goroutine + Channel 是 Go 的招牌,但必须留意被遗弃的 Channel

Goroutine 内存泄漏是产生 Go 程序内存泄漏的常见原因。在我之前的GCTT 出品 |Goroutine 泄露 - 被遗忘的发送者中,我介绍了 Goroutine 内存泄漏,并展示了许多 Go 开发人员容易犯错的例子。继续前面的内容,这篇文章提出了另一个关于 Goroutines 如何出现内存泄露的情景。
泄漏:被遗弃的接收者

在此内存泄漏示例中,您将看到多个 Goroutines 被阻塞等待接收永远不会发送的值。
文章中程序启动了多个 Goroutines 来处理文件中的一批记录。每个 Goroutine 从输入通道接收值,然后通过输出通道发送新值。
示例一

- 阅读剩余部分 -