主页

如何避免 Go 命令行执行产生“孤儿”进程?

在 Go 程序当中,如果我们要执行命令时,通常会使用 exec.Command ,也比较好用,通常状况下,可以达到我们的目的,如果我们逻辑当中,需要终止这个进程,则可以快速使用 cmd.Process.Kill() 方法来结束进程。但当我们要执行的命令会启动其他子进程来操作的时候,会发生什么情况?

阅读更多

Go 操作文件

Go 内置库中 io.Reader/Writer 是比较常用的接口。很多原生的接口都围绕这个系列的接口展开,在实际的开发过程中,你会发现通过这个接口可以在多种不同的 io 类型之间进行过渡和转化。

阅读更多

CVE 2012 0507 Java

公司的电脑升级 OpenJDK 8, 所以从 RedHet 官网下载了一个最新的版本, 结果被 Windows 扫描到有 CVE-2012-0507, 还因此禁用了我的网络连接. 那么什么是 CVE-2012-0507 漏洞呢? 以下是转载的内容.

阅读更多

深入理解 Atwood 定律

在 Jeff Atwood 发表于 2007 年的这篇博客里,他提出了著名的“Atwood 定律”,即”任何能够用 JavaScript 实现的应用系统,最终都必将用 JavaScript 实现。“ (Any application that can be written in JavaScript, will eventually be written in JavaScript.)那么,这位大牛为何如此推崇 JavaScript 呢?如何真正理解他提出的这个定律?

阅读更多

java 8 到 java 17 升级指北

2014 年发布的 java SE 8 和 2017 年发布的 java EE 8,至今还是使用最广泛的 java 版本,大部分 java 开发者对于 java 8 之后的升级总是敬而远之,这跟 java 9 以后的破坏性升级和 oracle 的商用协议有关,但随着 9 月 java 17的发布,我们有更多理由去升级和在新项目中使用更新的 java 了。

阅读更多